From 6a3b91e6d5727acf34c65cbdaa075d9f93f10202 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 27 Nov 2012 17:19:13 +0100 Subject: [PATCH] [FIX] web_shortcuts: remove server-side eval, move all logic to js bzr revid: xmo@openerp.com-20121127161913-46ita3emgjan7diu --- addons/web_shortcuts/__init__.py | 1 - addons/web_shortcuts/controllers/__init__.py | 3 --- addons/web_shortcuts/controllers/main.py | 11 ----------- addons/web_shortcuts/static/src/js/web_shortcuts.js | 12 ++++++++---- 4 files changed, 8 insertions(+), 19 deletions(-) delete mode 100644 addons/web_shortcuts/controllers/__init__.py delete mode 100644 addons/web_shortcuts/controllers/main.py diff --git a/addons/web_shortcuts/__init__.py b/addons/web_shortcuts/__init__.py index 6c74add0cca..99b6a1491e8 100644 --- a/addons/web_shortcuts/__init__.py +++ b/addons/web_shortcuts/__init__.py @@ -17,6 +17,5 @@ # along with this program. If not, see . # ############################################################################## -import controllers # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_shortcuts/controllers/__init__.py b/addons/web_shortcuts/controllers/__init__.py deleted file mode 100644 index 9f828025b8e..00000000000 --- a/addons/web_shortcuts/controllers/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -import main - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_shortcuts/controllers/main.py b/addons/web_shortcuts/controllers/main.py deleted file mode 100644 index 2cdf232ac0f..00000000000 --- a/addons/web_shortcuts/controllers/main.py +++ /dev/null @@ -1,11 +0,0 @@ -import openerp - -class Shortcuts(openerp.addons.web.http.Controller): - _cp_path = "/web/shortcuts" - - @openerp.addons.web.http.jsonrequest - def list(self, req): - return req.session.model('ir.ui.view_sc').get_sc( - req.session._uid, "ir.ui.menu", req.session.eval_context(req.context)) - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_shortcuts/static/src/js/web_shortcuts.js b/addons/web_shortcuts/static/src/js/web_shortcuts.js index 918feb4634d..a2607e3749e 100644 --- a/addons/web_shortcuts/static/src/js/web_shortcuts.js +++ b/addons/web_shortcuts/static/src/js/web_shortcuts.js @@ -33,7 +33,7 @@ instance.web_shortcuts.Shortcuts = instance.web.Widget.extend({ this.on('display', this, this.display); this.on('remove', this, this.remove); this.on('click', this, this.click); - this.dataset = new instance.web.DataSet(this, 'ir.ui.view_sc'); + this.model = new instance.web.Model('ir.ui.view_sc'); }, start: function() { var self = this; @@ -46,7 +46,11 @@ instance.web_shortcuts.Shortcuts = instance.web.Widget.extend({ load: function() { var self = this; this.$el.find('.oe_systray_shortcuts_items').empty(); - return this.rpc('/web/shortcuts/list', {}).done(function(shortcuts) { + return this.model.call('get_sc', [ + instance.session.uid, + 'ir.ui.menu', + instance.web.pyeval.eval('context', {}) + ]).done(function(shortcuts) { _.each(shortcuts, function(sc) { self.trigger('display', sc); }); @@ -54,7 +58,7 @@ instance.web_shortcuts.Shortcuts = instance.web.Widget.extend({ }, add: function (sc) { var self = this; - this.dataset.create(sc).then(function(out){ + this.model.call('create', [sc]).then(function(out){ self.trigger('load'); }); }, @@ -69,7 +73,7 @@ instance.web_shortcuts.Shortcuts = instance.web.Widget.extend({ var $shortcut = this.$el.find('.oe_systray_shortcuts_items li a[data-id=' + menu_id + ']'); var shortcut_id = $shortcut.data('shortcut-id'); $shortcut.remove(); - this.dataset.unlink([shortcut_id]); + this.model.call('unlink', [shortcut_id]); }, click: function($link) { var self = this,