From 72e6b197034df6b6b7536f5196a20e143735f025 Mon Sep 17 00:00:00 2001 From: acetousk Date: Tue, 24 Oct 2023 16:37:58 -0600 Subject: [PATCH 1/2] Add condition and evaluate type for container macro --- template/screen-macro/DefaultScreenMacros.qvt.ftl | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/template/screen-macro/DefaultScreenMacros.qvt.ftl b/template/screen-macro/DefaultScreenMacros.qvt.ftl index 71abbc09d..a75b9b074 100644 --- a/template/screen-macro/DefaultScreenMacros.qvt.ftl +++ b/template/screen-macro/DefaultScreenMacros.qvt.ftl @@ -87,9 +87,12 @@ ${sri.renderSectionInclude(.node)} <#macro container> <#assign contDivId><@nodeId .node/> - <${.node["@type"]!"div"}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> - <#recurse> - + <#if .node["@condition"]?has_content><#assign conditionResult = ec.getResource().condition(.node["@condition"], "")><#else><#assign conditionResult = true> + <#if conditionResult> + <${ec.getResource().expand(.node["@type"]!"div", "")}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> + <#recurse> + + <#macro "container-box"> From be2512f69c723a03feedee104325b0cfd4390c92 Mon Sep 17 00:00:00 2001 From: acetousk Date: Fri, 8 Mar 2024 15:39:03 -0700 Subject: [PATCH 2/2] Apply condition attribute to apps and vapps mode --- template/screen-macro/DefaultScreenMacros.html.ftl | 9 ++++++--- template/screen-macro/DefaultScreenMacros.vuet.ftl | 9 ++++++--- template/screen-macro/ScreenHtmlMacros.ftl | 11 +++++++---- template/screen-macro/TestScreenHtmlMacros.ftl | 11 +++++++---- 4 files changed, 26 insertions(+), 14 deletions(-) diff --git a/template/screen-macro/DefaultScreenMacros.html.ftl b/template/screen-macro/DefaultScreenMacros.html.ftl index 37c86281e..ff44fe7ec 100644 --- a/template/screen-macro/DefaultScreenMacros.html.ftl +++ b/template/screen-macro/DefaultScreenMacros.html.ftl @@ -195,9 +195,12 @@ ${sri.renderSectionInclude(.node)} <#macro container> <#assign contDivId><@nodeId .node/> - <${.node["@type"]!"div"}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> - <#recurse> - + <#if .node["@condition"]?has_content><#assign conditionResult = ec.getResource().condition(.node["@condition"], "")><#else><#assign conditionResult = true> + <#if conditionResult> + <${ec.getResource().expand(.node["@type"]!"div", "")}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> + <#recurse> + + <#macro "container-box"> diff --git a/template/screen-macro/DefaultScreenMacros.vuet.ftl b/template/screen-macro/DefaultScreenMacros.vuet.ftl index c8eae0da5..f239310f8 100644 --- a/template/screen-macro/DefaultScreenMacros.vuet.ftl +++ b/template/screen-macro/DefaultScreenMacros.vuet.ftl @@ -85,9 +85,12 @@ ${sri.renderSectionInclude(.node)} <#macro container> <#assign contDivId><@nodeId .node/> - <${.node["@type"]!"div"}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> - <#recurse> - + <#if .node["@condition"]?has_content><#assign conditionResult = ec.getResource().condition(.node["@condition"], "")><#else><#assign conditionResult = true> + <#if conditionResult> + <${ec.getResource().expand(.node["@type"]!"div", "")}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> + <#recurse> + + <#macro "container-box"> diff --git a/template/screen-macro/ScreenHtmlMacros.ftl b/template/screen-macro/ScreenHtmlMacros.ftl index f4a26037b..56f45fca9 100644 --- a/template/screen-macro/ScreenHtmlMacros.ftl +++ b/template/screen-macro/ScreenHtmlMacros.ftl @@ -14,8 +14,11 @@ along with this software (see the LICENSE.md file). If not, see <#include "DefaultScreenMacros.html.ftl"/> <#-- NOTE: no empty lines between the #include and the first #macro otherwise FTL outputs empty lines--> <#macro container> - <#assign divId><@nodeId .node/> - <${.node["@type"]!"div"}<#if divId?has_content> id="${divId}"<#if .node["@style"]?has_content> class="${ec.resource.expand(.node["@style"], "")}"> - <#recurse> - + <#assign contDivId><@nodeId .node/> + <#if .node["@condition"]?has_content><#assign conditionResult = ec.getResource().condition(.node["@condition"], "")><#else><#assign conditionResult = true> + <#if conditionResult> + <${ec.getResource().expand(.node["@type"]!"div", "")}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> + <#recurse> + + diff --git a/template/screen-macro/TestScreenHtmlMacros.ftl b/template/screen-macro/TestScreenHtmlMacros.ftl index 043bb83f5..e473d6b3e 100644 --- a/template/screen-macro/TestScreenHtmlMacros.ftl +++ b/template/screen-macro/TestScreenHtmlMacros.ftl @@ -14,8 +14,11 @@ along with this software (see the LICENSE.md file). If not, see <#include "DefaultScreenMacros.html.ftl"/> <#macro container> - <#assign divId><@nodeId .node/> - <${.node["@type"]!"div"}<#if divId?has_content> id="${divId}"<#if .node["@style"]?has_content> class="${ec.resource.expand(.node["@style"], "")}"> - <#recurse> - + <#assign contDivId><@nodeId .node/> + <#if .node["@condition"]?has_content><#assign conditionResult = ec.getResource().condition(.node["@condition"], "")><#else><#assign conditionResult = true> + <#if conditionResult> + <${ec.getResource().expand(.node["@type"]!"div", "")}<#if contDivId?has_content> id="${contDivId}"<#if .node["@style"]?has_content> class="${ec.getResource().expandNoL10n(.node["@style"], "")}"> + <#recurse> + +