controllers is family form fixes

bzr revid: al@openerp.com-20110718132409-tfk5p1mx0jnpc9kk
This commit is contained in:
Antony Lesuisse 2011-07-18 15:24:09 +02:00
parent 31a725f75c
commit e703080b51
1 changed files with 13 additions and 16 deletions

View File

@ -529,7 +529,7 @@ openerp.base.form.Widget = openerp.base.Controller.extend({
this.element_name = this.element_name || this.type;
this.element_id = [this.view.element_id, this.element_name, this.view.widgets_counter++].join("_");
this._super(this.view.session, this.element_id);
this._super(view, this.element_id);
this.view.widgets[this.element_id] = this;
this.children = node.children;
@ -1377,7 +1377,7 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({
var search_val = request.term;
var self = this;
var dataset = new openerp.base.DataSetStatic(this.session, this.field.relation, self.build_context());
var dataset = new openerp.base.DataSetStatic(this, this.field.relation, self.build_context());
dataset.name_search(search_val, self.build_domain(), 'ilike',
this.limit + 1, function(data) {
@ -1419,7 +1419,7 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({
},
_quick_create: function(name) {
var self = this;
var dataset = new openerp.base.DataSetStatic(this.session, this.field.relation, self.build_context());
var dataset = new openerp.base.DataSetStatic(this, this.field.relation, self.build_context());
dataset.name_create(name, function(data) {
self._change_int_ext_value(data);
}).fail(function(error, event) {
@ -1431,7 +1431,7 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({
// all search/create popup handling
_search_create_popup: function(view, ids, context) {
var self = this;
var pop = new openerp.base.form.SelectCreatePopup(null, self.view.session);
var pop = new openerp.base.form.SelectCreatePopup(this);
pop.select_element(self.field.relation,{
initial_ids: ids ? _.map(ids, function(x) {return x[0]}) : undefined,
initial_view: view,
@ -1439,7 +1439,7 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({
}, self.build_domain(),
new openerp.base.CompoundContext(self.build_context(), context || {}));
pop.on_select_elements.add(function(element_ids) {
var dataset = new openerp.base.DataSetStatic(this.session, this.field.relation, self.build_context());
var dataset = new openerp.base.DataSetStatic(this, this.field.relation, self.build_context());
dataset.name_get([element_ids[0]], function(data) {
self._change_int_ext_value(data[0]);
pop.stop();
@ -1477,7 +1477,7 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({
self._change_int_ext_value(rval);
};
if(typeof(value) === "number") {
var dataset = new openerp.base.DataSetStatic(this.session, this.field.relation, self.build_context());
var dataset = new openerp.base.DataSetStatic(this, this.field.relation, self.build_context());
dataset.name_get([value], function(data) {
real_set_value(data[0]);
}).fail(function() {self.tmp_value = undefined;});
@ -1561,7 +1561,7 @@ openerp.base.form.FieldOne2Many = openerp.base.form.Field.extend({
var self = this;
this.dataset = new openerp.base.form.One2ManyDataSet(this.session, this.field.relation);
this.dataset = new openerp.base.form.One2ManyDataSet(this, this.field.relation);
this.dataset.o2m = this;
this.dataset.parent_view = this.view;
this.dataset.on_change.add_last(function() {
@ -1585,7 +1585,7 @@ openerp.base.form.FieldOne2Many = openerp.base.form.Field.extend({
});
this.views = views;
this.viewmanager = new openerp.base.ViewManager(this.view.session,
this.viewmanager = new openerp.base.ViewManager(this.view,
this.element_id, this.dataset, views);
this.viewmanager.registry = openerp.base.views.clone({
list: 'openerp.base.form.One2ManyListView'
@ -1706,7 +1706,7 @@ openerp.base.form.One2ManyListView = openerp.base.ListView.extend({
this._super.apply(this, arguments);
} else {
var self = this;
var pop = new openerp.base.form.SelectCreatePopup(null, self.o2m.view.session);
var pop = new openerp.base.form.SelectCreatePopup(this);
pop.select_element(self.o2m.field.relation,{
initial_view: "form",
alternative_form_view: self.o2m.field.views ? self.o2m.field.views["form"] : undefined,
@ -1752,15 +1752,13 @@ openerp.base.form.FieldMany2Many = openerp.base.form.Field.extend({
var self = this;
this.dataset = new openerp.base.form.Many2ManyDataSet(
this.session, this.field.relation);
this.dataset = new openerp.base.form.Many2ManyDataSet( this, this.field.relation);
this.dataset.m2m = this;
this.dataset.on_unlink.add_last(function(ids) {
self.on_ui_change();
});
this.list_view = new openerp.base.form.Many2ManyListView(
null, this.view.session, this.list_id, this.dataset, false, {
this.list_view = new openerp.base.form.Many2ManyListView(this, this.list_id, this.dataset, false, {
'addable': 'Add',
'selectable': self.multi_selection
});
@ -1803,8 +1801,7 @@ openerp.base.form.Many2ManyDataSet = openerp.base.DataSetStatic.extend({
openerp.base.form.Many2ManyListView = openerp.base.ListView.extend({
do_add_record: function () {
var pop = new openerp.base.form.SelectCreatePopup(
null, this.m2m_field.view.session);
var pop = new openerp.base.form.SelectCreatePopup(this);
pop.select_element(this.model, {},
new openerp.base.CompoundDomain(this.m2m_field.build_domain(), ["!", ["id", "in", this.m2m_field.dataset.ids]]),
this.m2m_field.build_context());
@ -1895,7 +1892,7 @@ openerp.base.form.SelectCreatePopup = openerp.base.BaseWidget.extend({
$sbutton.click(function() {
self.on_select_elements(self.selected_ids);
});
self.view_list = new openerp.base.form.SelectCreateListView( null, self.session,
self.view_list = new openerp.base.form.SelectCreateListView(this,
self.element_id + "_view_list", self.dataset, false,
{'deletable': false});
self.view_list.popup = self;