diff --git a/nano/js/nano_template.js b/nano/js/nano_template.js index 7847c6f9dd2..bdb1eeeb5f1 100644 --- a/nano/js/nano_template.js +++ b/nano/js/nano_template.js @@ -76,7 +76,7 @@ var NanoTemplate = function () { _compiledTemplates[key] = doT.template(_templates[key], null, _templates) } catch (error) { - alert(error); + alert(error.message); } } }; @@ -89,13 +89,18 @@ var NanoTemplate = function () { _templates[key] = templateString; }, parse: function (templateKey, data) { - if (!_compiledTemplates.hasOwnProperty(templateKey)) { + if (!_compiledTemplates.hasOwnProperty(templateKey) || !_compiledTemplates[templateKey]) { if (!_templates.hasOwnProperty(templateKey)) { alert('ERROR: Template "' + templateKey + '" does not exist in _compiledTemplates!'); - return; + return '

Template error (does not exist)

'; } compileTemplates(); } + if (typeof _compiledTemplates[templateKey] != 'function') { + alert(_compiledTemplates[templateKey]); + alert('ERROR: Template "' + templateKey + '" failed to compile!'); + return '

Template error (failed to compile)

'; + } return _compiledTemplates[templateKey].call(this, data['data'], data['config'], _helpers); }, addHelper: function (helperName, helperFunction) {