fix Ox.formatString

This commit is contained in:
rlx 2013-07-22 17:49:50 +00:00
parent dc0c504809
commit e2be60c762
2 changed files with 5 additions and 5 deletions

View file

@ -747,11 +747,11 @@ Ox.formatString <f> Basic string formatting
> Ox.formatString('{a\\.b}', {'a.b': 'foobar'})
'foobar'
> Ox.formatString('{1}', ['foobar'])
'{1}'
> Ox.formatString('{b}', {a: 'foobar'}, true)
''
> Ox.formatString('{b}', {a: 'foobar'}, true)
'{b}'
@*/
Ox.formatString = function(string, collection, removeUnmatched) {
Ox.formatString = function(string, collection, keepUnmatched) {
return string.replace(/\{([^}]+)\}/g, function(string, match) {
// make sure to not split at escaped dots ('\.')
var key,
@ -768,7 +768,7 @@ Ox.formatString = function(string, collection, removeUnmatched) {
break;
}
}
return value || (removeUnmatched ? '' : '{' + match + '}');
return value !== null ? value : keepUnmatched ? '{' + match + '}' : '';
});
};

View file

@ -69,7 +69,7 @@
var translation = translations[value];
log && log(value, translation);
translation = translation || value;
return Ox.formatString(translation, options, true);
return Ox.formatString(translation, options);
};
/*@