summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
Diffstat (limited to 'addons')
-rw-r--r--addons/web/static/src/js/framework/session.js47
1 files changed, 23 insertions, 24 deletions
diff --git a/addons/web/static/src/js/framework/session.js b/addons/web/static/src/js/framework/session.js
index 06c1303a233..718e4c52c33 100644
--- a/addons/web/static/src/js/framework/session.js
+++ b/addons/web/static/src/js/framework/session.js
@@ -182,31 +182,30 @@ var Session = core.Class.extend(mixins.EventDispatcherMixin, {
*/
load_modules: function() {
var self = this;
- return this.rpc('/web/session/modules', {}).then(function(result) {
- var all_modules = _.uniq(self.module_list.concat(result));
- var to_load = _.difference(result, self.module_list).join(',');
- self.module_list = all_modules;
+ var modules = odoo._modules;
+ var all_modules = _.uniq(self.module_list.concat(modules));
+ var to_load = _.difference(modules, self.module_list).join(',');
+ this.module_list = all_modules;
- var loaded = $.when(self.load_translations());
- var locale = "/web/webclient/locale/" + self.user_context.lang || 'en_US';
- var file_list = [ locale ];
- if(to_load.length) {
- loaded = $.when(
- loaded,
- self.rpc('/web/webclient/csslist', {mods: to_load}).done(self.load_css.bind(self)),
- self.load_qweb(to_load),
- self.rpc('/web/webclient/jslist', {mods: to_load}).done(function(files) {
- file_list = file_list.concat(files);
- })
- );
- }
- return loaded.then(function () {
- return self.load_js(file_list);
- }).done(function() {
- self.on_modules_loaded();
- self.trigger('module_loaded');
- });
- });
+ var loaded = $.when(self.load_translations());
+ var locale = "/web/webclient/locale/" + self.user_context.lang || 'en_US';
+ var file_list = [ locale ];
+ if(to_load.length) {
+ loaded = $.when(
+ loaded,
+ self.rpc('/web/webclient/csslist', {mods: to_load}).done(self.load_css.bind(self)),
+ self.load_qweb(to_load),
+ self.rpc('/web/webclient/jslist', {mods: to_load}).done(function(files) {
+ file_list = file_list.concat(files);
+ })
+ );
+ }
+ return loaded.then(function () {
+ return self.load_js(file_list);
+ }).done(function() {
+ self.on_modules_loaded();
+ self.trigger('module_loaded');
+ });
},
load_translations: function() {
return _t.database.load_translations(this, this.module_list, this.user_context.lang);