From 359118de7d705b7968f33689c3add0f2b260f8dd Mon Sep 17 00:00:00 2001 From: Jens Pelzetter Date: Sat, 5 Mar 2022 17:56:28 +0100 Subject: [PATCH] Structure for showing assets in the default theme --- .../themes/librecms/templates/assets.html.ftl | 11 +++++++++++ .../librecms/templates/category-page.html.ftl | 18 ++++++++++++++++++ .../pages/models/ContentItemModel.java | 9 +++++++++ 3 files changed, 38 insertions(+) create mode 100644 ccm-cms-default-theme/src/main/resources/themes/librecms/templates/assets.html.ftl diff --git a/ccm-cms-default-theme/src/main/resources/themes/librecms/templates/assets.html.ftl b/ccm-cms-default-theme/src/main/resources/themes/librecms/templates/assets.html.ftl new file mode 100644 index 000000000..fd1f252be --- /dev/null +++ b/ccm-cms-default-theme/src/main/resources/themes/librecms/templates/assets.html.ftl @@ -0,0 +1,11 @@ +<#macro foo> +

foo

+ + +<#macro "org.librecms.assets.FileAsset"> +

A file asset

+ + +<#macro "org.librecms.assets.RelatedLink"> +

A releated link

+ \ No newline at end of file diff --git a/ccm-cms-default-theme/src/main/resources/themes/librecms/templates/category-page.html.ftl b/ccm-cms-default-theme/src/main/resources/themes/librecms/templates/category-page.html.ftl index ed48a0a58..0207eabbd 100644 --- a/ccm-cms-default-theme/src/main/resources/themes/librecms/templates/category-page.html.ftl +++ b/ccm-cms-default-theme/src/main/resources/themes/librecms/templates/category-page.html.ftl @@ -1,4 +1,5 @@ <#import "./main.html.ftl" as main> +<#import "./assets.html.ftl" as assets> <@main.librecms>
@@ -15,6 +16,23 @@
+ <#list CmsPagesCategorizedItemModel.attachmentLists as attachmentList> +

${attachmentList.title}

+

${attachmentList.description}

+ <#list attachmentList.attachments> + + +

Notes

    diff --git a/ccm-cms/src/main/java/org/librecms/pages/models/ContentItemModel.java b/ccm-cms/src/main/java/org/librecms/pages/models/ContentItemModel.java index c919c3927..90efb97e8 100644 --- a/ccm-cms/src/main/java/org/librecms/pages/models/ContentItemModel.java +++ b/ccm-cms/src/main/java/org/librecms/pages/models/ContentItemModel.java @@ -62,6 +62,7 @@ public class ContentItemModel { /** * Provides access to the builders for asset models. */ + @Inject private AssetModelBuilders assetModelBuilders; /** @@ -273,6 +274,14 @@ public class ContentItemModel { .map(ContentItemModelData::getDescription) .orElse(""); } + + @Transactional(Transactional.TxType.REQUIRED) + public List getAttachmentLists() { + init(); + return contentItem + .map(ContentItemModelData::getAttachmentLists) + .orElse(Collections.emptyList()); + } /** * Gets the version of the current item (see {@link ContentItem#version}.