From e5f04b50db81c0ca01b83959801b13af08860c41 Mon Sep 17 00:00:00 2001 From: eschleb Date: Mon, 18 Dec 2023 14:49:58 +0100 Subject: [PATCH] Add editable param to area helper --- Helpers.md | 1 + .../handlebars/helpers/magnolia/CmsAreaTemplateHelper.java | 3 +++ 2 files changed, 4 insertions(+) diff --git a/Helpers.md b/Helpers.md index fbbc0d5..b80bb91 100644 --- a/Helpers.md +++ b/Helpers.md @@ -27,6 +27,7 @@ Parameters: |----------|-----------|----------- | name | String |Name of the area element | area | String |Name of the area definition node such as ContentArea, Footer or Stage. +| editable | boolean |By setting the value to false you can prevent area editing. Additional key-value params are added to the context. Can be used to pass key-value pairs to components inside this area. #### supplier-page diff --git a/light-development/src/main/java/com/merkle/oss/magnolia/renderer/handlebars/helpers/magnolia/CmsAreaTemplateHelper.java b/light-development/src/main/java/com/merkle/oss/magnolia/renderer/handlebars/helpers/magnolia/CmsAreaTemplateHelper.java index 4ecd973..ef875c0 100755 --- a/light-development/src/main/java/com/merkle/oss/magnolia/renderer/handlebars/helpers/magnolia/CmsAreaTemplateHelper.java +++ b/light-development/src/main/java/com/merkle/oss/magnolia/renderer/handlebars/helpers/magnolia/CmsAreaTemplateHelper.java @@ -60,6 +60,7 @@ public Optional applySafe(final Object ignored, final Options opti final String name = options.hash("name"); // area name for BE, ignored by FE final String area = StringUtils.defaultIfBlank(options.hash("area"), name); + final boolean editable = options.hash("editable", true); final RenderingModel model = getRenderingModel(options.context).orElseThrow(() -> new IllegalArgumentException("Rendering model not present!") @@ -85,6 +86,8 @@ public Optional applySafe(final Object ignored, final Options opti areaElement.setName(name); areaElement.setContextAttributes(options.hash); + areaElement.setEditable(editable); + return Optional.of(render(areaElement)); }