[FIX] Fixed on_record_loaded.

bzr revid: vta@openerp.com-20121010100233-tulf3c1fvnt2s85e
This commit is contained in:
vta vta@openerp.com 2012-10-10 12:02:33 +02:00
parent b8d7b8cb0a
commit 40eceb20a3
4 changed files with 29 additions and 21 deletions

View File

@ -126,7 +126,7 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
self.on("change:actual_mode", self, self.init_pager);
self.init_pager();
});
self.on("record_load", self, self.on_record_loaded);
self.on("load_record", self, self.load_record);
instance.web.bus.on('clear_uncommitted_changes', this, function(e) {
if (!this.can_be_discarded()) {
e.preventDefault();
@ -332,7 +332,9 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
fields.push('display_name');
return self.dataset.read_index(fields, {
context: { 'bin_size': true, 'future_display_name' : true }
}).pipe(function(r){self.trigger('record_load',r)});
}).pipe(function(r) {
self.trigger('load_record', r);
});
});
}
return shown.pipe(function() {
@ -355,7 +357,7 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
}
this._super();
},
on_record_loaded: function(record) {
load_record: function(record) {
var self = this, set_values = [];
if (!record) {
this.set({ 'title' : undefined });
@ -417,10 +419,11 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
var self = this;
var keys = _.keys(this.fields_view.fields);
if (keys.length) {
return this.dataset.default_get(keys)
.pipe(function(r){self.trigger('record_load',r)});
return this.dataset.default_get(keys).pipe(function(r) {
self.trigger('load_record', r);
});
}
return self.trigger('record_load',{});
return self.trigger('load_record', {});
},
on_form_changed: function() {
this.trigger("view_content_has_changed");
@ -754,7 +757,7 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
this.trigger('history_back');
} else {
this.to_view_mode();
this.trigger('record_load',this.datarecord);
this.trigger('load_record', this.datarecord);
}
}
return false;
@ -954,9 +957,15 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
} else {
var fields = _.keys(self.fields_view.fields);
fields.push('display_name');
return self.dataset.read_index(fields, {
context : { 'bin_size' : true, 'future_display_name' : true }
}).pipe(function(r){self.trigger('record_load',r)});
return self.dataset.read_index(fields,
{
context: {
'bin_size': true,
'future_display_name': true
}
}).pipe(function(r) {
self.trigger('load_record', r);
});
}
});
},
@ -3371,7 +3380,7 @@ instance.web.form.FieldOne2Many = instance.web.form.AbstractField.extend({
if (self.get("effective_readonly")) {
$(".oe_form_buttons", controller.$el).children().remove();
}
controller.on("record_load", self, function(){
controller.on("load_record", self, function(){
once.resolve();
});
controller.on_pager_action.add_first(function() {

View File

@ -626,7 +626,7 @@ openerp.web.list_editable = function (instance) {
},
start: function () {
var self = this;
var _super = this._super();
var _super = this._super();
this.form.embedded_view = this._validate_view(
this.delegate.edition_view(this));
var form_ready = this.form.appendTo(this.$el).then(
@ -708,10 +708,9 @@ openerp.web.list_editable = function (instance) {
var self = this;
var form = self.form;
var loaded = record
? form.on_record_loaded(_.extend({}, record))
? form.trigger('load_record', _.extend({}, record))
: form.load_defaults();
return loaded.pipe(function () {
return $.when(loaded).pipe(function () {
return form.do_show({reload: false});
}).pipe(function () {
self.record = form.datarecord;

View File

@ -246,7 +246,7 @@ instance.web.DiagramView = instance.web.View.extend({
var form_fields = [self.parent_field];
var form_controller = pop.view_form;
form_controller.on("record_load", self, function(){
form_controller.on("load_record", self, function(){
_.each(form_fields, function(fld) {
if (!(fld in form_controller.fields)) { return; }
var field = form_controller.fields[fld];
@ -280,7 +280,7 @@ instance.web.DiagramView = instance.web.View.extend({
var form_controller = pop.view_form;
var form_fields = [this.parent_field];
form_controller.on("record_load", self, function(){
form_controller.on("load_record", self, function(){
_.each(form_fields, function(fld) {
if (!(fld in form_controller.fields)) { return; }
var field = form_controller.fields[fld];
@ -340,7 +340,7 @@ instance.web.DiagramView = instance.web.View.extend({
var form_controller = pop.view_form;
form_controller.on("record_load", self, function(){
form_controller.on("load_record", self, function(){
form_controller.fields[self.connectors.attrs.source].set_value(node_source_id);
form_controller.fields[self.connectors.attrs.source].dirty = true;
form_controller.fields[self.connectors.attrs.destination].set_value(node_dest_id);

View File

@ -23,14 +23,14 @@ openerp.web_tests = function (instance) {
on_everything_loaded: function (slice) {
var records = slice[0].records;
if (!records.length) {
this.form.trigger("record_load",{});
this.form.trigger("load_record", {});
return;
}
this.form.trigger("record_load", records[0])
this.form.trigger("load_record", records[0]);
_(records.slice(1)).each(function (record, index) {
this.dataset.index = index+1;
this.form.reposition($('<div>').appendTo(this.$el));
this.form.trigger("record_load", record)
this.form.trigger("load_record", record);
}, this);
}
});