summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views/basic/basic_model.js
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/static/src/js/views/basic/basic_model.js')
-rw-r--r--addons/web/static/src/js/views/basic/basic_model.js9
1 files changed, 8 insertions, 1 deletions
diff --git a/addons/web/static/src/js/views/basic/basic_model.js b/addons/web/static/src/js/views/basic/basic_model.js
index 75a0ad02971..dfc8858664d 100644
--- a/addons/web/static/src/js/views/basic/basic_model.js
+++ b/addons/web/static/src/js/views/basic/basic_model.js
@@ -509,6 +509,7 @@ var BasicModel = AbstractModel.extend({
}
if (params.type === 'record' && params.res_id === undefined) {
+ params.allowWarning = true;
return this._makeDefaultRecord(params.modelName, params);
}
var dataPoint = this._makeDataPoint(params);
@@ -2735,6 +2736,8 @@ var BasicModel = AbstractModel.extend({
* @private
* @param {any} params
* @param {string} modelName model name
+ * @param {boolean} [params.allowWarning=false] if true, the default record
+ * operation can complete, even if a warning is raised
* @param {Object} params.context the context for the new record
* @param {Object} params.fieldsInfo contains the fieldInfo of each view,
* for each field
@@ -2887,7 +2890,11 @@ var BasicModel = AbstractModel.extend({
.then(function () {
return self._performOnChange(record, fields_key).then(function () {
if (record._warning) {
- return $.Deferred().reject();
+ if (params.allowWarning) {
+ delete record._warning;
+ } else {
+ return $.Deferred().reject();
+ }
}
});
})