[FIX] Fix load_translations, right deferred return, and improved language selection

bzr revid: vta@openerp.com-20121228125244-v8mf6abge6jy4hlg
This commit is contained in:
vta vta@openerp.com
2012-12-28 13:52:44 +01:00
parent 22808e5a81
commit 27974575fd
@@ -16,19 +16,28 @@ openerp.portal_anonymous = function(instance) {
// then don't change session.user_context.lang
if (langs.length > 0) {
// Try to get the right user preference in the browser, else
// get the first returned language
// get the shortest language returned ('xx' country code) or
// just the first one
var l = _.filter(langs, function(lang) { return lang.code === browser_lang || lang.iso_code === browser_lang; });
if (!_.isEmpty(l)) {
self.user_context.lang = l[0].code;
} else {
self.user_context.lang = langs.sort(function(a, b) {
return a.length - b.length;
})[0].code;
l = _.filter(langs, function(lang) {
return lang.iso_code === _.pluck(langs, 'iso_code')
.sort(function(a, b) {
return a.length - b.length;
})[0];
});
self.user_context.lang = l[0].code;
}
}
return self.rpc('/web/webclient/translations', { mods: self.module_list, lang: self.user_context.lang }).done(function(trans) {
console.log(trans);
instance.web._t.database.set_bundle(trans);
});
});
}
return self._super();
return this._super();
},
});