summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorFabien Meghazi <fme@openerp.com>2011-11-15 15:58:06 +0100
committerFabien Meghazi <fme@openerp.com>2011-11-15 15:58:06 +0100
commit7e9090fde7cebc40d81f93f2eb1f4ec86afed4fa (patch)
tree891f37c2f824a5ebfc109bb6e8a3996ff7efd418 /addons/web/static/src
parentb72b197cf016b01dcbe86ddd5b063f64953539e1 (diff)
[REM] FormView: Removed is_dirty_for_user and replaced by calling is_dirty() on fields
bzr revid: fme@openerp.com-20111115145806-hlh19loo03nmy1qx
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/view_form.js20
1 files changed, 12 insertions, 8 deletions
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js
index 2d9fc439920..75ffb514892 100644
--- a/addons/web/static/src/js/view_form.js
+++ b/addons/web/static/src/js/view_form.js
@@ -35,7 +35,6 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
this.fields = {};
this.datarecord = {};
this.show_invalid = true;
- this.dirty_for_user = false;
this.default_focus_field = null;
this.default_focus_button = null;
this.registry = this.readonly ? openerp.web.form.readonly : openerp.web.form.widgets;
@@ -172,7 +171,6 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
}
this.$form_header.find('.oe_form_on_readonly').toggle(this.readonly);
this.$form_header.find('.oe_form_on_editable').toggle(!this.readonly);
- this.dirty_for_user = false;
this.datarecord = record;
for (var f in this.fields) {
var field = this.fields[f];
@@ -317,7 +315,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
processed.push(field.name);
if (field.get_value() != value) {
field.set_value(value);
- field.dirty = this.dirty_for_user = true;
+ field.dirty = true;
if (_.indexOf(processed, field.name) < 0) {
this.do_onchange(field, processed);
}
@@ -402,7 +400,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
return def.promise();
},
can_be_discarded: function() {
- return !this.dirty_for_user || confirm(_t("Warning, the record has been modified, your changes will be discarded."));
+ return !this.is_dirty() || confirm(_t("Warning, the record has been modified, your changes will be discarded."));
},
/**
* Triggers saving the form's record. Chooses between creating a new
@@ -418,8 +416,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
try {
if (!self.initial_mutating_lock.isResolved() && !self.initial_mutating_lock.isRejected())
return;
- var form_dirty = false,
- form_invalid = false,
+ var form_invalid = false,
values = {},
first_invalid_field = null;
for (var f in self.fields) {
@@ -431,7 +428,6 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
first_invalid_field = f;
}
} else if (f.is_dirty()) {
- form_dirty = true;
values[f.name] = f.get_value();
}
}
@@ -553,6 +549,14 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
return self.dataset.parent_view.recursive_save();
});
},
+ is_dirty: function() {
+ for (var f in this.fields) {
+ if (this.fields[f].is_dirty()) {
+ return true;
+ }
+ }
+ return false;
+ },
is_interactible_record: function() {
var id = this.datarecord.id;
if (!id) {
@@ -1236,7 +1240,7 @@ openerp.web.form.Field = openerp.web.form.Widget.extend(/** @lends openerp.web.f
}
},
on_ui_change: function() {
- this.dirty = this.view.dirty_for_user = true;
+ this.dirty = true;
this.validate();
if (this.is_valid()) {
this.set_value_from_ui();