summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorniv-openerp <nicolas.vanhoren@openerp.com>2012-06-07 17:23:01 +0200
committerniv-openerp <nicolas.vanhoren@openerp.com>2012-06-07 17:23:01 +0200
commitc7e32e7175ffbee3f0b9b0031a8cb773b268858b (patch)
tree935f0afa7e87e1ce08968e3aedf9e79c35901e2d /addons/web/static/src
parenteb7b8c8fcb342377fc4f8f3c1884116157e17ad8 (diff)
[FIX] Problem with SelectCreatePopup, the list view can sometimes be editable
lp bug: https://launchpad.net/bugs/1005812 fixed bzr revid: nicolas.vanhoren@openerp.com-20120607152301-mu43z3n7q2fonsuk
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/view_form.js3
-rw-r--r--addons/web/static/src/js/view_list.js3
-rw-r--r--addons/web/static/src/js/view_list_editable.js5
3 files changed, 7 insertions, 4 deletions
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js
index 1c622933c1d..2e170dfa646 100644
--- a/addons/web/static/src/js/view_form.js
+++ b/addons/web/static/src/js/view_form.js
@@ -3777,7 +3777,8 @@ instance.web.form.SelectCreatePopup = instance.web.form.AbstractFormPopup.extend
self.view_list = new instance.web.form.SelectCreateListView(self,
self.dataset, false,
_.extend({'deletable': false,
- 'selectable': !self.options.disable_multiple_selection
+ 'selectable': !self.options.disable_multiple_selection,
+ 'read_only': true,
}, self.options.list_view_options || {}));
self.view_list.popup = self;
self.view_list.appendTo($(".oe-select-create-popup-view-list", self.$element)).pipe(function() {
diff --git a/addons/web/static/src/js/view_list.js b/addons/web/static/src/js/view_list.js
index 81654534c26..de73ec21884 100644
--- a/addons/web/static/src/js/view_list.js
+++ b/addons/web/static/src/js/view_list.js
@@ -21,6 +21,9 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
// whether the view rows can be reordered (via vertical drag & drop)
'reorderable': true,
'action_buttons': true,
+ // if true, the view can't be editable, ignoring the view's and the context's
+ // instructions
+ 'read_only': false,
},
/**
* Core class for list-type displays.
diff --git a/addons/web/static/src/js/view_list_editable.js b/addons/web/static/src/js/view_list_editable.js
index 84074c17e5e..c80509a7b2b 100644
--- a/addons/web/static/src/js/view_list_editable.js
+++ b/addons/web/static/src/js/view_list_editable.js
@@ -54,8 +54,7 @@ openerp.web.list_editable = function (instance) {
// view' @editable is handled separately as we have not yet
// fetched and processed the view at this point.
this.options.editable = (
- (force && "bottom")
- || this.defaults.editable);
+ ! this.options.read_only && ((force && "bottom") || this.defaults.editable));
},
/**
* Replace do_search to handle editability process
@@ -79,7 +78,7 @@ openerp.web.list_editable = function (instance) {
},
on_loaded: function (data, grouped) {
// tree/@editable takes priority on everything else if present.
- this.options.editable = data.arch.attrs.editable || this.options.editable;
+ this.options.editable = ! this.options.read_only && (data.arch.attrs.editable || this.options.editable);
return this._super(data, grouped);
},
/**