From 7a814be7657e5d4f39ad1deb0cc58408001426e3 Mon Sep 17 00:00:00 2001 From: jensp Date: Fri, 15 Feb 2019 18:31:06 +0000 Subject: [PATCH] FreemarkerPresentationManager now falls back to PageTransformer if no theme manifest is found or if XSL_FALLBACK.XSL is configured as template git-svn-id: https://svn.libreccm.org/ccm/trunk@5829 8810af33-2d31-482b-a856-94f89814c4df --- .../theming/FreeMarkerPresentationManager.java | 12 ++++++++++++ ccm-pages/web/themes/freemarker/macros.ftl | 1 + 2 files changed, 13 insertions(+) diff --git a/ccm-pages/src/org/libreccm/theming/FreeMarkerPresentationManager.java b/ccm-pages/src/org/libreccm/theming/FreeMarkerPresentationManager.java index d6fa2eb5e..9c5b43013 100644 --- a/ccm-pages/src/org/libreccm/theming/FreeMarkerPresentationManager.java +++ b/ccm-pages/src/org/libreccm/theming/FreeMarkerPresentationManager.java @@ -1,6 +1,7 @@ package org.libreccm.theming; import com.arsdigita.bebop.Bebop; +import com.arsdigita.bebop.page.PageTransformer; import com.arsdigita.domain.DataObjectNotFoundException; import com.arsdigita.globalization.GlobalizationHelper; import com.arsdigita.subsite.Site; @@ -132,6 +133,11 @@ public class FreeMarkerPresentationManager implements PresentationManager { // } final InputStream manifestInputStream = servletContext .getResourceAsStream(themeManifestPath); + if (manifestInputStream == null) { + final PageTransformer pageTransformer = new PageTransformer(); + pageTransformer.servePage(document, request, response); + return; + } final ThemeManifestUtil manifestUtil = ThemeManifestUtil.getInstance(); final ThemeManifest manifest = manifestUtil @@ -168,6 +174,12 @@ public class FreeMarkerPresentationManager implements PresentationManager { } else { applicationTemplatePath = templates.getDefaultApplicationTemplate(); } + + if ("XSL_FALLBACK.XSL".equals(applicationTemplatePath)) { + final PageTransformer pageTransformer = new PageTransformer(); + pageTransformer.servePage(document, request, response); + return; + } final Configuration configuration = new Configuration( Configuration.VERSION_2_3_28); diff --git a/ccm-pages/web/themes/freemarker/macros.ftl b/ccm-pages/web/themes/freemarker/macros.ftl index 475e36cb6..531e752ae 100644 --- a/ccm-pages/web/themes/freemarker/macros.ftl +++ b/ccm-pages/web/themes/freemarker/macros.ftl @@ -5,6 +5,7 @@ "ui": "http://www.arsdigita.com/ui/1.0"} > +<#-- Move to Navigation tags? --> <#macro pageTitle> ${model["//nav:categoryMenu/nav:category/@title"]}