[ADD] Add options arguments to Dataset#read_index in order to provide custom contexts

bzr revid: fme@openerp.com-20120110143513-00p14goadekz0y4z
This commit is contained in:
Fabien Meghazi 2012-01-10 15:35:13 +01:00
parent e9261325df
commit f0c294e584
3 changed files with 7 additions and 6 deletions

View File

@ -322,16 +322,17 @@ openerp.web.DataSet = openerp.web.Widget.extend( /** @lends openerp.web.DataSet
* Reads the current dataset record (from its index)
*
* @params {Array} [fields] fields to read and return, by default all fields are returned
* @param {Object} [options.context] context data to add to the request payload, on top of the DataSet's own context
* @params {Function} callback function called with read_index result
* @returns {$.Deferred}
*/
read_index: function (fields, callback) {
read_index: function (fields, options, callback) {
var def = $.Deferred().then(callback);
if (_.isEmpty(this.ids)) {
def.reject();
} else {
fields = fields || false;
this.read_ids([this.ids[this.index]], fields).then(function(records) {
this.read_ids([this.ids[this.index]], fields, options).then(function(records) {
def.resolve(records[0]);
}, function() {
def.reject.apply(def, arguments);

View File

@ -290,7 +290,7 @@ openerp.web_dashboard.ConfigOverview = openerp.web.View.extend({
start: function () {
this._super();
var self = this;
return this.user.read_index(['groups_id']).pipe(function (record) {
return this.user.read_index(['groups_id']).pipe(function(record) {
var todos_filter = [
['type', '!=', 'automatic'],
'|', ['groups_id', '=', false],

View File

@ -219,7 +219,7 @@ openerp.web.DiagramView = openerp.web.View.extend({
this.context || this.dataset.context
);
pop.on_select_elements.add_last(function(element_ids) {
self.dataset.read_index(_.keys(self.fields_view.fields), self.on_diagram_loaded);
self.dataset.read_index(_.keys(self.fields_view.fields)).pipe(self.on_diagram_loaded);
});
} else {
pop = new openerp.web.form.FormOpenPopup(this);
@ -232,7 +232,7 @@ openerp.web.DiagramView = openerp.web.View.extend({
}
);
pop.on_write.add(function() {
self.dataset.read_index(_.keys(self.fields_view.fields), self.on_diagram_loaded);
self.dataset.read_index(_.keys(self.fields_view.fields)).pipe(self.on_diagram_loaded);
});
}
@ -292,7 +292,7 @@ openerp.web.DiagramView = openerp.web.View.extend({
this.dataset.index = this.dataset.ids.length - 1;
break;
}
this.dataset.read_index(_.keys(this.fields_view.fields), this.on_diagram_loaded);
this.dataset.read_index(_.keys(this.fields_view.fields)).pipe(this.on_diagram_loaded);
this.do_update_pager();
},