diff --git a/APPL/Shared/locale.inc b/APPL/Shared/locale.inc index 470a3c4727..33b319794b 100644 --- a/APPL/Shared/locale.inc +++ b/APPL/Shared/locale.inc @@ -92,8 +92,8 @@ lcl = { this.loadLCL(); } - if (!(p_lcl in cache_lcls)) - { + if (!(p_lcl in cache_lcls) || cache_lcls[p_lcl].overrulefallback) + { // Laatste keer individueel uit de database ophalen var sql = "SELECT fac_locale_xsl_key," + " COALESCE(fac_locale_xsl_cust, fac_locale_xsl_tekst) fac_locale_xsl_tekst" + " FROM fac_locale_xsl" @@ -110,9 +110,16 @@ lcl = { oRs.Close(); if (locale_xsl_key == -1) { - cache_lcls[p_lcl] = { txt: "??" + safe.html(p_lcl) + "??" }; // undefined fallback - __DoLog("LCL '" + p_lcl + "' is undefined!", "#FFFF00"); - return cache_lcls[p_lcl].txt; + if (!cache_lcls[p_lcl]) + { + cache_lcls[p_lcl] = { txt: "??" + safe.html(p_lcl) + "??" }; // zelfs geen overrulefallback + __DoLog("LCL '{0}' is undefined!".format(p_lcl), "#F00"); + } + else + { + __DoLog("LCL '{0}' is undefined but overruled to '{1}'".format(p_lcl, cache_lcls[p_lcl].txt), "#FF0"); + } + return cache_lcls[p_lcl].txt||""; } else { @@ -126,16 +133,7 @@ lcl = { } } - var txt = cache_lcls[p_lcl].txt||""; - if (cache_lcls[p_lcl].overrulefallback) - { - // Als je deze tekst voor een bepaalde lcl maar blijft terugzien bij een klant - // is waarschijnlijk de lcl nog nooit geregistreerd in fac_locale_xref. - // Dan moet je heel even de overrule weghalen uit cust/custenv.wsc zodat - // fac_locale_xref de lcl 'leert'. Daarna kan de overrule weer terug. - __DoLog("LCL '" + p_lcl + "' is undefined! Fallback to cust/custenv.wsc overrule: " + txt+ "", "#FF0000"); - } - return txt; + return cache_lcls[p_lcl].txt||""; }, loadLCL: function(path)