diff --git a/bower.json b/bower.json index d69771b..221c874 100644 --- a/bower.json +++ b/bower.json @@ -1,7 +1,7 @@ { "name": "strolch-wc-localize-behavior", "description": "Strolch Polymer Localization Behavior extension", - "version": "1.1.15", + "version": "1.1.16", "authors": [ "Franz Nieschalk", "Robert von Burg" diff --git a/strolch-wc-localize-behavior.html b/strolch-wc-localize-behavior.html index 279bfd7..07e5083 100644 --- a/strolch-wc-localize-behavior.html +++ b/strolch-wc-localize-behavior.html @@ -13,9 +13,24 @@ created: function () { this.__computeLocalizeOld = this.__computeLocalize; this.__computeLocalize = function (language, resources, formats) { + var localizeFunc; if (!resources[language]) - return this.__computeLocalizeOld(this.fallbackLanguage, resources, formats).bind(this); - return this.__computeLocalizeOld(language, resources, formats).bind(this); + localizeFunc = this.__computeLocalizeOld(this.fallbackLanguage, resources, formats).bind(this); + localizeFunc = this.__computeLocalizeOld(language, resources, formats).bind(this); + + return function () { + var key = arguments[0]; + if (!key || !resources || !language || !resources[language]) + return; + + try { + return localizeFunc.apply(this, arguments); + } catch (e) { + console.log("Failed to translate key " + key); + console.log(e); + return key; + } + }.bind(this); }.bind(this); }, attached: function () {