From f87fe3c08a2fb0b39852efcaefa341b0d3e4a0a2 Mon Sep 17 00:00:00 2001 From: Christophe Simonis Date: Wed, 21 Dec 2011 11:41:49 +0100 Subject: [PATCH] [FIX] correct module loading bzr revid: chs@openerp.com-20111221104149-su893ux077hep01z --- addons/web/static/src/js/core.js | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/addons/web/static/src/js/core.js b/addons/web/static/src/js/core.js index 9c87a0fd7e0..066e904a8df 100644 --- a/addons/web/static/src/js/core.js +++ b/addons/web/static/src/js/core.js @@ -552,8 +552,8 @@ openerp.web.Connection = openerp.web.CallbackEnabled.extend( /** @lends openerp. user_context: result.context }); var deferred = self.do_load_qweb(['/web/webclient/qweb']); - if(self.uid) { - return deferred.then(self.load_modules()); + if(self.session_is_valid()) { + return deferred.pipe(_.bind(function() { this.load_modules(); }, self)); } return deferred; }); @@ -636,26 +636,23 @@ openerp.web.Connection = openerp.web.CallbackEnabled.extend( /** @lends openerp. if(openerp._modules_loaded) { return $.when(); } - this.rpc('/web/session/modules', {}, function(result) { + return this.rpc('/web/session/modules', {}).pipe(function(result) { self.module_list = result; var lang = self.user_context.lang; var params = { mods: ["web"].concat(result), lang: lang}; - self.rpc('/web/webclient/translations',params).pipe(function(transs) { - openerp.web._t.database.set_bundle(transs); - var modules = self.module_list.join(','); - var file_list = ["/web/static/lib/datejs/globalization/" + - self.user_context.lang.replace("_", "-") + ".js" - ]; - return $.when( - self.rpc('/web/webclient/csslist', {mods: modules}, self.do_load_css), - self.rpc('/web/webclient/qweblist', {mods: modules}).pipe(self.do_load_qweb) - ).pipe(function() { + var modules = self.module_list.join(','); + return $.when( + self.rpc('/web/webclient/csslist', {mods: modules}, self.do_load_css), + self.rpc('/web/webclient/qweblist', {mods: modules}).pipe(self.do_load_qweb), + self.rpc('/web/webclient/translations', params).pipe(function(trans) { + openerp.web._t.database.set_bundle(trans); + var file_list = ["/web/static/lib/datejs/globalization/" + lang.replace("_", "-") + ".js"]; return self.rpc('/web/webclient/jslist', {mods: modules}).pipe(function(files) { return self.do_load_js(file_list.concat(files)); }); - }).then(function() { - self.ready.resolve(); - }); + }) + ).then(function() { + self.ready.resolve(); }); }); },