Removed usage of view to compute domain
bzr revid: nicolas.vanhoren@openerp.com-20121004143337-hoon3hzh6y1qlfub
This commit is contained in:
parent
83a16a2374
commit
5a108df9b6
|
@ -44,6 +44,13 @@ instance.web.form.FieldManagerMixin = {
|
||||||
@return (Deferred) Is resolved after all the values are setted.
|
@return (Deferred) Is resolved after all the values are setted.
|
||||||
*/
|
*/
|
||||||
set_values: function(values) {},
|
set_values: function(values) {},
|
||||||
|
/**
|
||||||
|
Computes an OpenERP domain.
|
||||||
|
|
||||||
|
@param (list) expression An OpenERP domain.
|
||||||
|
@return (boolean) The computed value of the domain.
|
||||||
|
*/
|
||||||
|
compute_domain: function(expression) {},
|
||||||
};
|
};
|
||||||
|
|
||||||
instance.web.views.add('form', 'instance.web.FormView');
|
instance.web.views.add('form', 'instance.web.FormView');
|
||||||
|
@ -1109,6 +1116,9 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
|
||||||
get_field_value: function(field_name) {
|
get_field_value: function(field_name) {
|
||||||
return this.fields[field_name].get_value();
|
return this.fields[field_name].get_value();
|
||||||
},
|
},
|
||||||
|
compute_domain: function(expression) {
|
||||||
|
return instance.web.form.compute_domain(expression, this.fields);
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1641,9 +1651,7 @@ instance.web.form.InvisibilityChangerMixin = {
|
||||||
this._ic_invisible_modifier = invisible_domain;
|
this._ic_invisible_modifier = invisible_domain;
|
||||||
this._ic_field_manager.on("view_content_has_changed", this, function() {
|
this._ic_field_manager.on("view_content_has_changed", this, function() {
|
||||||
var result = self._ic_invisible_modifier === undefined ? false :
|
var result = self._ic_invisible_modifier === undefined ? false :
|
||||||
instance.web.form.compute_domain(
|
self._ic_field_manager.compute_domain(self._ic_invisible_modifier);
|
||||||
self._ic_invisible_modifier,
|
|
||||||
self._ic_field_manager.fields);
|
|
||||||
self.set({"invisible": result});
|
self.set({"invisible": result});
|
||||||
});
|
});
|
||||||
this.set({invisible: this._ic_invisible_modifier === true, force_invisible: false});
|
this.set({invisible: this._ic_invisible_modifier === true, force_invisible: false});
|
||||||
|
@ -1738,12 +1746,11 @@ instance.web.form.FormWidget = instance.web.Widget.extend(instance.web.form.Invi
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
process_modifiers: function() {
|
process_modifiers: function() {
|
||||||
var compute_domain = instance.web.form.compute_domain;
|
|
||||||
var to_set = {};
|
var to_set = {};
|
||||||
for (var a in this.modifiers) {
|
for (var a in this.modifiers) {
|
||||||
if (!this.modifiers.hasOwnProperty(a)) { continue; }
|
if (!this.modifiers.hasOwnProperty(a)) { continue; }
|
||||||
if (!_.include(["invisible"], a)) {
|
if (!_.include(["invisible"], a)) {
|
||||||
var val = compute_domain(this.modifiers[a], this.view.fields);
|
var val = this.field_manager.compute_domain(this.modifiers[a]);
|
||||||
to_set[a] = val;
|
to_set[a] = val;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue