From 75bb67c2029ed370c277f04c0b904abdae671afb Mon Sep 17 00:00:00 2001 From: acetousk <acetousk@users.noreply.github.com> Date: Tue, 11 Mar 2025 20:46:48 -0600 Subject: [PATCH] Bug fix: force#DiskToDbResourceAndPublish --- service/mjml/MjmlServices.xml | 76 ++++++++++++++++++++++++++++++++++++++-------------------------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/service/mjml/MjmlServices.xml b/service/mjml/MjmlServices.xml index db277c1..7240d04 100644 --- a/service/mjml/MjmlServices.xml +++ b/service/mjml/MjmlServices.xml @@ -683,51 +683,51 @@ Find the email templates in the productStore, for each email template in the pro <set field="dbResourceToUpdateText" from="dbResourceToUpdate.getText()"/> <set field="childText" from="child.getText()"/> + <set field="updatedText" from="false"/> <if condition="dbResourceToUpdateText != childText"><then> <script><![CDATA[ dbResourceToUpdate.putText(childText) + updatedText = true ]]></script> - <set field="versionName" from="dbResourceToUpdate.getCurrentVersion()?.getVersionName()"/> - <if condition="!versionName"> - <log level="warn" message="No version name found for dbresource ${dbResourceToUpdate.location}"/> - <continue/> - </if> - <if condition="updateEmailTemplate"> - <entity-find entity-name="moqui.basic.email.EmailTemplate" list="emailTemplateList" for-update="true"> - <econditions combine="or"> - <econdition field-name="grapesLocation" from="dbResourceToUpdate.location"/> - <econdition field-name="htmlLocation" from="dbResourceToUpdate.location"/> - </econditions> - <select-field field-name="emailTemplateId,grapesPublishedVersionName,htmlPublishedVersionName,grapesLocation,htmlLocation"/> - <order-by field-name="-lastUpdatedStamp"/> - </entity-find> - <if condition="emailTemplateList.size() == 0"> - <log level="warn" message="No email template found for dbresource ${dbResourceToUpdate.location}"/> - <continue/> - </if> - - <iterate list="emailTemplateList" entry="emailTemplate"> - <set field="logText" value="At emailTemplate ${emailTemplate.emailTemplateId},"/> - <if condition="emailTemplate.grapesLocation == dbResourceToUpdate.location"> - <set field="emailTemplate.grapesPublishedVersionName" from="versionName"/> - <set field="updatedEmailTemplateList" from="updatedEmailTemplateList + [emailTemplate:emailTemplate,location:emailTemplate.grapesLocation,versionName:versionName,grapesOrHtml:'grapes']"/> - <set field="updatedEmailTemplate" from="true"/> - <set field="logText" from="logText + ' updating grapesPublishedVersionName to ' + versionName"/> - </if> - <if condition="emailTemplate.htmlLocation == dbResourceToUpdate.location"> - <set field="emailTemplate.htmlPublishedVersionName" from="versionName"/> - <set field="updatedEmailTemplateList" from="updatedEmailTemplateList + [emailTemplate:emailTemplate,location:emailTemplate.htmlLocation,versionName:versionName,grapesOrHtml:'html']"/> - <set field="updatedEmailTemplate" from="true"/> - <set field="logText" from="logText + ' updating htmlPublishedVersionName to ' + versionName"/> - </if> - <log level="info" message="${logText}"/> - <entity-update value-field="emailTemplate"/> - </iterate> - </if> </then><else> - <log level="info" message="Not updating from disk because file at ${child.location} and dbresource at ${dbResourceToUpdate.location} are the same"/> </else></if> + <set field="versionName" from="dbResourceToUpdate.getCurrentVersion()?.getVersionName()"/> + <if condition="!versionName"> + <log level="warn" message="No version name found for dbresource ${dbResourceToUpdate.location}"/> + <continue/> + </if> + <if condition="updateEmailTemplate"> + <entity-find entity-name="moqui.basic.email.EmailTemplate" list="emailTemplateList" for-update="true"> + <econditions combine="or"> + <econdition field-name="grapesLocation" from="dbResourceToUpdate.location"/> + <econdition field-name="htmlLocation" from="dbResourceToUpdate.location"/> + </econditions> + <select-field field-name="emailTemplateId,grapesPublishedVersionName,htmlPublishedVersionName,grapesLocation,htmlLocation"/> + <order-by field-name="-lastUpdatedStamp"/> + </entity-find> + <if condition="emailTemplateList.size() == 0"> + <log level="warn" message="No email template found for dbresource ${dbResourceToUpdate.location}"/> + <continue/> + </if> + + <iterate list="emailTemplateList" entry="emailTemplate"> + <set field="logText" value="At emailTemplate ${emailTemplate.emailTemplateId},"/> + <if condition="emailTemplate.grapesLocation == dbResourceToUpdate.location && emailTemplate.grapesPublishedVersionName != versionName"> + <set field="emailTemplate.grapesPublishedVersionName" from="versionName"/> + <set field="updatedEmailTemplateList" from="updatedEmailTemplateList + [emailTemplate:emailTemplate,location:emailTemplate.grapesLocation,versionName:versionName,grapesOrHtml:'grapes']"/> + <set field="updatedEmailTemplate" from="true"/> + <set field="logText" from="logText + ' updating grapesPublishedVersionName to ' + versionName"/> + </if> + <if condition="emailTemplate.htmlLocation == dbResourceToUpdate.location && emailTemplate.htmlPublishedVersionName != versionName"> + <set field="emailTemplate.htmlPublishedVersionName" from="versionName"/> + <set field="updatedEmailTemplateList" from="updatedEmailTemplateList + [emailTemplate:emailTemplate,location:emailTemplate.htmlLocation,versionName:versionName,grapesOrHtml:'html']"/> + <set field="updatedEmailTemplate" from="true"/> + <set field="logText" from="logText + ' updating htmlPublishedVersionName to ' + versionName"/> + </if> + <entity-update value-field="emailTemplate"/> + </iterate> + </if> </iterate> </actions> </service> -- libgit2 0.24.0