summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views/form_widgets.js
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2016-08-20 17:18:31 +0200
committerChristophe Simonis <chs@odoo.com>2016-08-20 17:18:31 +0200
commit9ad5f26b3fb98cd14527de80d19bf6554a6981e2 (patch)
tree771dc0267ad045abb1f2c4c77e814fbf7f3923d9 /addons/web/static/src/js/views/form_widgets.js
parentc3665fb5c9c9c50e9a8fd2d52e83c50f52d603aa (diff)
parent3a2147d95c8005ab7c1dbe4d94315e404ea5e5f9 (diff)
[MERGE] forward port branch saas-11 up to 3a2147d
Diffstat (limited to 'addons/web/static/src/js/views/form_widgets.js')
-rw-r--r--addons/web/static/src/js/views/form_widgets.js14
1 files changed, 11 insertions, 3 deletions
diff --git a/addons/web/static/src/js/views/form_widgets.js b/addons/web/static/src/js/views/form_widgets.js
index 194f9bc5443..a72702a2d08 100644
--- a/addons/web/static/src/js/views/form_widgets.js
+++ b/addons/web/static/src/js/views/form_widgets.js
@@ -441,6 +441,7 @@ var FieldCharDomain = common.AbstractField.extend(common.ReinitializeFieldMixin,
this.$('.o_debug_input').val(this.get('value'));
}
} else {
+ this.$('.o_form_input').val('');
this.$('.o_count').text(_t('No selected record'));
var $arrow = this.$('button span').detach();
this.$('button').text(_t('Select records ')).append($("<span/>").addClass('fa fa-arrow-right'));
@@ -965,7 +966,7 @@ var FieldRadio = common.AbstractField.extend(common.ReinitializeFieldMixin, {
if(this.get('effective_readonly')) {
this.$el.html(this.get('value')? this.get('value')[1] : "");
} else {
- this.$("input").filter(function() {return this.value == self.get_value();}).prop("checked", true);
+ this.$("input").prop("checked", false).filter(function () {return this.value == self.get_value();}).prop("checked", true);
}
}
});
@@ -1400,13 +1401,17 @@ var FieldStatus = common.AbstractField.extend({
return fields;
});
},
- on_click_stage: function (ev) {
+ on_click_stage: _.debounce(function (ev) {
var self = this;
var $li = $(ev.currentTarget);
+ var ul = $li.closest('.oe_form_field_status');
if (this.view.is_disabled) {
return;
}
var val;
+ if (ul.attr('disabled')) {
+ return;
+ }
if (this.field.type === "many2one") {
val = parseInt($li.data("id"), 10);
} else {
@@ -1422,13 +1427,16 @@ var FieldStatus = common.AbstractField.extend({
this.view.recursive_save().done(function() {
var change = {};
change[self.name] = val;
+ ul.attr('disabled', true);
self.view.dataset.write(self.view.datarecord.id, change).done(function() {
self.view.reload();
+ }).always(function() {
+ ul.removeAttr('disabled');
});
});
}
}
- },
+ }, 300),
});
var FieldMonetary = FieldFloat.extend({