コード例 #1
0
 /**
  * Changes homepage template if possible. First tries to find first landing page template in
  * selected templates, if none found then looks for first template restricted to contentPages, if
  * not found, homepage template is not changed
  */
 protected static void adjustHomePageTemplate(
     final ContentPageModel homepage, final List<PageTemplateModel> pageTemplates) {
   // iterate over landing pages if any - take first one
   final PageTemplateModel landingPageTemplate = getLandingPageTemplate(pageTemplates);
   if (landingPageTemplate == null) {
     // no landing page? then iterate over ContentPages templates - take first one
     final PageTemplateModel contentPageTemplate = getContentPageTemplate(pageTemplates);
     if (contentPageTemplate != null) {
       homepage.setMasterTemplate(contentPageTemplate);
     }
   } else {
     homepage.setMasterTemplate(landingPageTemplate);
   }
 }
コード例 #2
0
  public static void createHomepage(
      final String uid,
      final String label,
      final CatalogVersionModel catVersion,
      final ContentCatalogModel contentCatalog,
      final CMSSiteModel cmsSiteModel,
      final List<PageTemplateModel> clonedTemplates) {
    final PageTemplateModel firstTemplate = clonedTemplates.iterator().next();
    final ModelService modelService = UISessionUtils.getCurrentSession().getModelService();

    final ContentPageModel contentPage = modelService.create(CONTENT_PAGE);
    contentPage.setUid(uid);
    contentPage.setName(uid);
    contentPage.setLabel(label);
    contentPage.setHomepage(true);
    contentPage.setCatalogVersion(catVersion);
    contentPage.setMasterTemplate(firstTemplate);
    contentPage.setDefaultPage(Boolean.TRUE);
    cmsSiteModel.setStartingPage(contentPage);
    adjustHomePageTemplate(contentPage, clonedTemplates);
    modelService.save(contentPage);
  }