get_arch: function() {
var self = this;
var view_arch_list = [];
- this.dataset.read_ids([parseInt(self.main_view_id)], ['arch', 'type'], function(arch) {
+ this.dataset.read_ids([parseInt(self.main_view_id)], ['arch', 'type']).then(function(arch) {
if (arch.length) {
var arch_object = self.parse_xml(arch[0].arch, self.main_view_id);
self.main_view_type = arch[0].type == 'tree'? 'list': arch[0].type;
controller.do_set_readonly.add_last(function(){
action_manager.stop();
new_fields_name = new openerp.web.DataSetSearch(self,'ir.model.fields', null, null);
- new_fields_name.read_ids([controller.datarecord.id], ['name'], function(result) {
+ new_fields_name.read_ids([controller.datarecord.id], ['name']).then(function(result) {
self.add_node_dialog.$element.find('select[id=field_value]').append($("<option selected></option>").attr("value", result[0].name).text(result[0].name));
_.detect(self.add_widget,function(widget){
widget.name == "field_value"? widget.selection.push(result[0].name): false;
[record.get('id')],
_.pluck(_(this.columns).filter(function (r) {
return r.tag === 'field';
- }), 'name'),
- function (records) {
- _(records[0]).each(function (value, key) {
- record.set(key, value, {silent: true});
- });
- record.trigger('change', record);
- }
- );
+ }), 'name')
+ ).then(function (records) {
+ _(records[0]).each(function (value, key) {
+ record.set(key, value, {silent: true});
+ });
+ record.trigger('change', record);
+ });
},
/**
* Renders a list record to HTML
getdata: function (id, children_ids) {
var self = this;
- self.dataset.read_ids(children_ids, this.fields_list(), function (records) {
+ self.dataset.read_ids(children_ids, this.fields_list()).then(function(records) {
_(records).each(function (record) {
self.records[record.id] = record;
});
}
});
if (!(self.action.id in self.session.hidden_menutips)) {
- Users.read_ids([this.session.uid], ['menu_tips'], function(users) {
+ Users.read_ids([this.session.uid], ['menu_tips']).then(function(users) {
var user = users[0];
if (!(user && user.id === self.session.uid)) {
return;
}
},
reload_event: function(id) {
- this.dataset.read_ids([id], _.keys(this.fields), this.on_events_loaded);
+ this.dataset.read_ids([id], _.keys(this.fields)).then(this.on_events_loaded);
},
get_color: function(key) {
if (this.color_map[key]) {
},
start: function () {
this._super();
- return new openerp.web.DataSet(this, 'res.widget').read_ids(
- [this.widget_id], ['title'], this.on_widget_loaded);
+ var ds = new openerp.web.DataSet(this, 'res.widget');
+ return ds.read_ids([this.widget_id], ['title']).then(this.on_widget_loaded);
},
on_widget_loaded: function (widgets) {
var widget = widgets[0];
},
do_reload: function() {
var self = this;
- this.view.dataset.read_ids([this.id], this.view.fields_keys, function(records) {
+ this.view.dataset.read_ids([this.id], this.view.fields_keys).then(function(records) {
if (records.length) {
self.set_record(records[0]);
self.do_render();