Hi,

i would use one site definition for both domains. For the Themeing i would use 
a custom page model which i recommend for every project. 

[code]public class DefaultPageModel extends 
RenderingModelImpl<RenderableDefinition> {

        private static Logger log = 
LoggerFactory.getLogger(DefaultPageModel.class);
        SiteManager siteManager;
        TemplatingFunctions templatingFunctions;
        SiteFunctions sitefn;

        @Inject
        public DefaultPageModel(Node content, RenderableDefinition definition, 
RenderingModel<?> parent,
                        TemplatingFunctions templatingFunctions, SiteManager 
siteManager, SiteFunctions sitefn) {
                super(content, definition, parent);
                this.siteManager = siteManager;
                this.templatingFunctions = templatingFunctions;
                this.sitefn = sitefn;
        }
    
    @Override
    public String execute() {
        
        /*
         * Theme & Prototype Switch for domains
         * 
        ConfiguredSite site = (ConfiguredSite) sitefn.site();
                ReferencingPrototypeTemplateSettings templateSettings = 
(ReferencingPrototypeTemplateSettings) site.getTemplates();
                ThemeReference themeReference = new ThemeReference();
                
        if (baseUrl().equals("domain1")) {
                themeReference.setName("domain1-theme-name");
                site.setTheme(themeReference);
            } else {
                        themeReference.setName("domain1-theme-name");
                site.setTheme(themeReference);
                }
        
        return null;
    }
        
        public String baseUrl() {
                HttpServletRequest request = 
MgnlContext.getWebContext().getRequest();
                String protocol = "http";

                for (Domain domain : siteManager.getCurrentSite().getDomains()) 
{
                        if (StringUtils.isNotBlank(domain.getProtocol())) {
                                protocol = domain.getProtocol();
                                break;
                        }
                }

                StringBuffer baseUrl = new StringBuffer();
                baseUrl.append(protocol);
                baseUrl.append("://");
                baseUrl.append(request.getServerName());

                if (("http".equals(request.getScheme()) && 
request.getServerPort() != 80)
                                || ("https".equals(request.getScheme()) && 
request.getServerPort() != 443)) {
                        baseUrl.append(":");
                        baseUrl.append(request.getServerPort());
                }

                return baseUrl.toString();
        }
}[/code]

-- 
Context is everything: 
http://forum.magnolia-cms.com/forum/thread.html?threadId=1109e864-c374-437c-a5c1-a24b8044c8e6


----------------------------------------------------------------
For list details, see http://www.magnolia-cms.com/community/mailing-lists.html
Alternatively, use our forums: http://forum.magnolia-cms.com/
To unsubscribe, E-mail to: <user-list-unsubscr...@magnolia-cms.com>
----------------------------------------------------------------

Reply via email to