From a36f63470cff432b05cb1f33af6d09da8f92d84d Mon Sep 17 00:00:00 2001
From: "mathias.chouet" <mathias.chouet@irstea.fr>
Date: Wed, 29 Jul 2020 12:09:39 +0200
Subject: [PATCH] Fix #426 - HTML entities in translated messages

---
 src/app/services/internationalisation.service.ts | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/app/services/internationalisation.service.ts b/src/app/services/internationalisation.service.ts
index 971508c2b..d8ddcb808 100644
--- a/src/app/services/internationalisation.service.ts
+++ b/src/app/services/internationalisation.service.ts
@@ -119,16 +119,16 @@ export class I18nService extends Observable implements Observer {
             return `*** messages not loaded: ${this._currentLanguage} ***`;
         }
         if (messages[textKey] !== undefined) {
-            return messages[textKey];
+            return decodeHtml(messages[textKey]);
         } else {
             // try general message
-            if(msg !== undefined && this._Messages["INFO_LIB_"+textKey.toUpperCase()] !== undefined) {
-                return this._Messages["INFO_LIB_"+textKey.toUpperCase()];
+            if (msg !== undefined && this._Messages["INFO_LIB_" + textKey.toUpperCase()] !== undefined) {
+                return decodeHtml(this._Messages["INFO_LIB_" + textKey.toUpperCase()]);
             }
             if (!isDevMode()) {
                 // try fallback language before giving up
                 if (this._fallbackMessages[textKey] !== undefined) {
-                    return this._fallbackMessages[textKey];
+                    return decodeHtml(this._fallbackMessages[textKey]);
                 }
             }
             return `*** message not found: ${textKey} ***`;
@@ -193,7 +193,8 @@ export class I18nService extends Observable implements Observer {
 
         // replace "FORM_ID_X" by form name in current session, if any
         m = m.replace(/FORM_ID_(\w{6})/g, (match, p1) => {
-            const form = ServiceFactory.formulaireService.getFormulaireFromNubId(p1); // cannot inject FormulaireService => cyclic dependency :/
+            // cannot inject FormulaireService => cyclic dependency :/
+            const form = ServiceFactory.formulaireService.getFormulaireFromNubId(p1);
             let formName = "**UNKNOWN_FORM**";
             if (form !== undefined) {
                 formName = form.calculatorName;
-- 
GitLab