diff options
| author | Denis Ledoux <dle@openerp.com> | 2014-03-27 12:24:56 +0100 |
|---|---|---|
| committer | Denis Ledoux <dle@openerp.com> | 2014-03-27 12:24:56 +0100 |
| commit | f652402dd786eff52f7a34a0ca2bf48c3b9c8331 (patch) | |
| tree | 7935169b455a8916c9fbd8e99667e75986c5766e /addons/web/static/src/js/view_form.js | |
| parent | e80a179d021d88419555c7d371a2850ea37b92fa (diff) | |
[FIX] web: read_ids of data.js use method search_read if check_access_rule option is true.
This fix is related to revision 3985 revid:dle@openerp.com-20140326142040-pls0dk2kd03z55ro, which did not worked for buffered dataset (virtual one2many line in view form
search_read is used instead of read to not return records for which we lose the access rights
bzr revid: dle@openerp.com-20140327112456-iyceuf9dnn07hwke
Diffstat (limited to 'addons/web/static/src/js/view_form.js')
| -rw-r--r-- | addons/web/static/src/js/view_form.js | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index 8b68e3ec730..fd838686ba9 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -962,21 +962,17 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM } else { var fields = _.keys(self.fields_view.fields); fields.push('display_name'); - // Use of search_read instead of read to check if we can still read the record (security rules) - return self.dataset.call('search_read', [[['id', '=', self.dataset.ids[self.dataset.index]]], fields], + return self.dataset.read_index(fields, { context: { 'bin_size': true, - 'future_display_name': true, - 'active_test': false - } + 'future_display_name': true + }, + check_access_rule: true }).then(function(r) { - if (_.isEmpty(r)){ - self.do_action('history_back'); - } - else{ - self.trigger('load_record', r[0]); - } + self.trigger('load_record', r); + }).fail(function (){ + self.do_action('history_back'); }); } }); |
