[IMP]remove callbacks from write method and change related code.

bzr revid: vme@tinyerp.com-20121001085609-rxdoknvpo130ehq3
This commit is contained in:
Vidhin Mehta (OpenERP) 2012-10-01 14:26:09 +05:30
parent 1370ae133d
commit 7c701944ec
6 changed files with 14 additions and 17 deletions

View File

@ -648,12 +648,11 @@ instance.web.DataSet = instance.web.CallbackEnabled.extend({
* @param {Function} error_callback function called in case of write error
* @returns {$.Deferred}
*/
write: function (id, data, options, callback, error_callback) {
write: function (id, data, options) {
options = options || {};
return this._model.call('write',
[[id], data], {context: this._model.context(options.context)})
.pipe(function (r) { return {result: r}})
.then(callback, error_callback);
.pipe(function (r) { return {result: r}});
},
/**
* Deletes an existing record from the database
@ -918,7 +917,7 @@ instance.web.BufferedDataSet = instance.web.DataSetStatic.extend({
this.cache.push(cached);
return $.Deferred().resolve({result: cached.id}).promise();
},
write: function (id, data, options, callback) {
write: function (id, data, options) {
var self = this;
var record = _.detect(this.to_create, function(x) {return x.id === id;});
record = record || _.detect(this.to_write, function(x) {return x.id === id;});
@ -944,9 +943,7 @@ instance.web.BufferedDataSet = instance.web.DataSetStatic.extend({
$.extend(cached.values, record.values);
if (dirty)
this.on_change();
var to_return = $.Deferred().then(callback);
to_return.resolve({result: true});
return to_return.promise();
return $.Deferred().resolve({result: true}).promise();
},
unlink: function(ids, callback, error_callback) {
var self = this;
@ -1092,9 +1089,9 @@ instance.web.ProxyDataSet = instance.web.DataSetSearch.extend({
return this._super.apply(this, arguments);
}
},
write: function (id, data, options, callback, error_callback) {
write: function (id, data, options) {
if (this.write_function) {
return this.write_function(id, data, options, this._super).then(callback, error_callback);
return this.write_function(id, data, options, this._super);
} else {
return this._super.apply(this, arguments);
}

View File

@ -3531,6 +3531,7 @@ instance.web.form.One2ManyListView = instance.web.ListView.extend({
.bind('remove', this.proxy("changed_records"));
},
start: function () {
console.log("one many list view");
var ret = this._super();
this.$el
.off('mousedown.handleButtons')
@ -3598,8 +3599,9 @@ instance.web.form.One2ManyListView = instance.web.ListView.extend({
var pop = new instance.web.form.FormOpenPopup(self.o2m.view);
pop.show_element(self.o2m.field.relation, id, self.o2m.build_context(), {
title: _t("Open: ") + self.o2m.string,
write_function: function(id, data) {
return self.o2m.dataset.write(id, data, {}, function(r) {
return self.o2m.dataset.write(id, data, {}).then(function() {
self.o2m.reload_current_view();
});
},

View File

@ -348,7 +348,7 @@ instance.web_calendar.CalendarView = instance.web.View.extend({
index = this.dataset.get_id_index(event_id);
if (index != null) {
event_id = this.dataset.ids[index];
this.dataset.write(event_id, data, {}, function() {
this.dataset.write(event_id, data, {}).then(function() {
self.refresh_minical();
});
}

View File

@ -206,9 +206,7 @@ instance.web_gantt.GanttView = instance.web.View.extend({
} else { // we assume date_duration is defined
data[self.fields_view.arch.attrs.date_delay] = duration;
}
this.dataset.write(itask.id, data).then(function() {
console.log("task edited");
});
this.dataset.write(itask.id, data);
},
on_task_display: function(task) {
var self = this;

View File

@ -379,7 +379,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
record.group = new_group;
var data = {};
data[this.group_by] = new_group.value;
this.dataset.write(record.id, data, {}, function() {
this.dataset.write(record.id, data, {}).then(function() {
record.do_reload();
new_group.do_save_sequences();
}).fail(function(error, evt) {
@ -877,7 +877,7 @@ instance.web_kanban.KanbanRecord = instance.web.Widget.extend({
var color_field = $(this).parents('.oe_kanban_colorpicker').first().data('field') || 'color';
var data = {};
data[color_field] = $(this).data('color');
self.view.dataset.write(self.id, data, {}, function() {
self.view.dataset.write(self.id, data, {}).then(function() {
self.record[color_field] = $(this).data('color');
self.do_reload();
});

View File

@ -775,7 +775,7 @@ instance.web_view_editor.ViewEditor = instance.web.Widget.extend({
convert_to_utf = convert_to_utf.replace('xmlns="http://www.w3.org/1999/xhtml"', "");
convert_to_utf = '<?xml version="1.0"?>' + convert_to_utf;
arch.arch = convert_to_utf;
this.dataset.write(this.one_object.clicked_tr_view[0] ,{"arch":convert_to_utf}, function(r) {});
this.dataset.write(this.one_object.clicked_tr_view[0] ,{"arch":convert_to_utf});
} else {
this.dataset.unlink([this.one_object.clicked_tr_view[0]]);
}