From 4258524ebf700c9fa57b2b08445cc0bef151a030 Mon Sep 17 00:00:00 2001 From: Tim Otten Date: Mon, 10 Jul 2023 20:35:34 -0700 Subject: [PATCH] message_admin - If tpl is translated in default-locale, then it replaces "Standard" tpl --- ext/message_admin/ang/crmMsgadm/ListCtrl.js | 18 +++++++++++------- .../ang/crmMsgadm/WorkflowTranslated.html | 4 ++-- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/ext/message_admin/ang/crmMsgadm/ListCtrl.js b/ext/message_admin/ang/crmMsgadm/ListCtrl.js index f2c77dfd42..688474cc67 100644 --- a/ext/message_admin/ang/crmMsgadm/ListCtrl.js +++ b/ext/message_admin/ang/crmMsgadm/ListCtrl.js @@ -32,13 +32,17 @@ }); var $ctrl = this; - $ctrl.records = _.map( - [].concat(prefetch.records, _.map(prefetch.translations || [], simpleKeys)), - function(r) { - r._is_translation = (r.tx_language !== undefined); - return r; - } - ); + var allRecords = [].concat(prefetch.records, _.map(prefetch.translations || [], simpleKeys)); + $ctrl.records = _.map(allRecords, function(r) { + r._is_translation = (r.tx_language !== undefined); + + // If there is a translation in the system-default-locale, then it replaces the "Standard" tpl as the primary/visible item entry. + const defaultLocaleTpl = _.find(allRecords, {workflow_name: r.workflow_name, tx_language: CRM.config.lcMessages}); + r._is_primary = defaultLocaleTpl ? (r === defaultLocaleTpl) : (!r._is_translation); + r._is_visible = (r._is_translation || r._is_primary); + + return r; + }); function findTranslations(record) { return _.reduce($ctrl.records, function(existing, rec){ diff --git a/ext/message_admin/ang/crmMsgadm/WorkflowTranslated.html b/ext/message_admin/ang/crmMsgadm/WorkflowTranslated.html index 4a51e0ed3d..2bcea9b050 100644 --- a/ext/message_admin/ang/crmMsgadm/WorkflowTranslated.html +++ b/ext/message_admin/ang/crmMsgadm/WorkflowTranslated.html @@ -19,7 +19,7 @@ - + {{record.msg_title}} {{record.tx_language_label || ts('Standard')}} @@ -39,7 +39,7 @@ - + {{:: ts('Translate') }} -- 2.25.1