summaryrefslogtreecommitdiff
path: root/addons/base_import/static/src
diff options
context:
space:
mode:
Diffstat (limited to 'addons/base_import/static/src')
-rw-r--r--addons/base_import/static/src/js/import.js14
1 files changed, 12 insertions, 2 deletions
diff --git a/addons/base_import/static/src/js/import.js b/addons/base_import/static/src/js/import.js
index d29452cc138..bc2635114a5 100644
--- a/addons/base_import/static/src/js/import.js
+++ b/addons/base_import/static/src/js/import.js
@@ -336,8 +336,18 @@ openerp.base_import = function (instance) {
var fields = this.$('.oe_import_fields input.oe_import_match_field').map(function (index, el) {
return $(el).select2('val') || false;
}).get();
- return this.Import.call(
- 'do', [this.id, fields, this.import_options()], options);
+ return this.Import.call('do', [this.id, fields, this.import_options()], options)
+ .then(undefined, function (error, event) {
+ // In case of unexpected exception, convert
+ // "JSON-RPC error" to an import failure, and
+ // prevent default handling (warning dialog)
+ if (event) { event.preventDefault(); }
+ return $.when([{
+ type: 'error',
+ record: false,
+ message: error.data.fault_code,
+ }]);
+ }) ;
},
onvalidate: function () {
return this.call_import({ dryrun: true })