diff options
| author | Xavier Morel <xmo@openerp.com> | 2012-02-10 15:55:02 +0100 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2012-02-10 15:55:02 +0100 |
| commit | d237ba0a2b31a8a029f2e730711fe7c2a1193d3f (patch) | |
| tree | 31c5a033bced4920144f0b8a8e8eb034cb38912e /addons/web/static/src/js | |
| parent | 9b7539ae2656bd283ca315de8ff0d27583c353ed (diff) | |
[FIX] only try to load CSS, QWeb and JS files if there are new modules to reload, especially as the new conditional requests will blow up when trying to load nothing at all
bzr revid: xmo@openerp.com-20120210145502-gbtq09g75xxt83c4
Diffstat (limited to 'addons/web/static/src/js')
| -rw-r--r-- | addons/web/static/src/js/core.js | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/addons/web/static/src/js/core.js b/addons/web/static/src/js/core.js index 3c5f1ee1e75..ba5b2c654b7 100644 --- a/addons/web/static/src/js/core.js +++ b/addons/web/static/src/js/core.js @@ -732,17 +732,21 @@ openerp.web.Connection = openerp.web.CallbackEnabled.extend( /** @lends openerp. var params = { mods: all_modules, lang: lang}; var to_load = _.difference(result, self.module_list).join(','); self.module_list = all_modules; - return $.when( - self.rpc('/web/webclient/csslist', {mods: to_load}, self.do_load_css), - self.rpc('/web/webclient/qweblist', {mods: to_load}).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: to_load}).pipe(function(files) { - return self.do_load_js(file_list.concat(files)); - }); - }) - ).then(function() { + + var loaded = $.Deferred().resolve().promise(); + if (to_load.length) { + loaded = $.when( + self.rpc('/web/webclient/csslist', {mods: to_load}, self.do_load_css), + self.rpc('/web/webclient/qweblist', {mods: to_load}).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: to_load}).pipe(function(files) { + return self.do_load_js(file_list.concat(files)); + }); + })) + } + return loaded.then(function() { self.on_modules_loaded(); if (!no_session_valid_signal) { self.on_session_valid(); |
