summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views.js
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/static/src/js/views.js')
-rw-r--r--addons/web/static/src/js/views.js12
1 files changed, 8 insertions, 4 deletions
diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js
index f0bbbe72699..04415166de2 100644
--- a/addons/web/static/src/js/views.js
+++ b/addons/web/static/src/js/views.js
@@ -68,9 +68,11 @@ db.web.ActionManager = db.web.Widget.extend({
},
on_url_hashchange: function(url) {
var self = this;
- self.rpc("/web/action/load", { action_id: url.action_id }, function(result) {
- self.do_action(result.result);
- });
+ if(url && url.action_id) {
+ self.rpc("/web/action/load", { action_id: url.action_id }, function(result) {
+ self.do_action(result.result);
+ });
+ }
},
do_action: function(action, on_close) {
var type = action.type.replace(/\./g,'_');
@@ -771,7 +773,9 @@ db.web.View = db.web.Widget.extend(/** @lends db.web.View# */{
var self = this;
var result_handler = function () {
if (on_closed) { on_closed.apply(null, arguments); }
- return self.widget_parent.on_action_executed.apply(null, arguments);
+ if (self.widget_parent && self.widget_parent.on_action_executed) {
+ return self.widget_parent.on_action_executed.apply(null, arguments);
+ }
};
var handler = function (r) {
var action = r.result;