diff --git a/src/model.js b/src/model.js index d9544befb0..ac08344ccf 100644 --- a/src/model.js +++ b/src/model.js @@ -1749,7 +1749,7 @@ options.maximumFractionDigits = digits[1]; } return (value * factor).toLocaleString( - Sao.i18n.getlang().replace('_', '-'), options); + Sao.i18n.BC47(Sao.i18n.getlang()), options); } else { return ''; } diff --git a/src/sao.js b/src/sao.js index 1242e9efe9..8bb5dbc7db 100644 --- a/src/sao.js +++ b/src/sao.js @@ -242,6 +242,9 @@ var Sao = {}; Sao.i18n.getlang = function() { return Sao.i18n.getLocale(); }; + Sao.i18n.BC47 = function(lang) { + return lang.replace('_', '-'); + }; Sao.i18n.setlang(); Sao.i18n.locale = {}; diff --git a/src/view/form.js b/src/view/form.js index 15d04f9299..130b0c7c35 100644 --- a/src/view/form.js +++ b/src/view/form.js @@ -1839,7 +1839,7 @@ function eval_pyson(value){ this.input.val(value); if(this.attributes.spell) { this.input.attr('lang', - record.expr_eval(this.attributes.spell)); + Sao.i18n.BC47(record.expr_eval(this.attributes.spell))); this.input.attr('spellcheck', 'true'); } } else { @@ -2028,7 +2028,7 @@ function eval_pyson(value){ value = record.field_get_client(this.field_name); if(this.attributes.spell) { this.input.attr('lang', - record.expr_eval(this.attributes.spell)); + Sao.i18n.BC47(record.expr_eval(this.attributes.spell))); this.input.attr('spellcheck', 'true'); } } diff --git a/src/view/tree.js b/src/view/tree.js index 52eb488bf5..70ff8d1bd0 100644 --- a/src/view/tree.js +++ b/src/view/tree.js @@ -584,9 +584,9 @@ options.minimumFractionDigits = digit; options.maximumFractionDigits = digit; selected_sum = (selected_sum || 0).toLocaleString( - Sao.i18n.getlang(), options); + Sao.i18n.BC47(Sao.i18n.getlang()), options); sum_ = (sum_ || 0).toLocaleString( - Sao.i18n.getlang(), options); + Sao.i18n.BC47(Sao.i18n.getlang()), options); } aggregate = selected_sum + ' / ' + sum_; }