From f307e36e66c53f89eee1ac0dfdd691518abacc91 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Wed, 8 Jun 2016 10:57:21 +0200 Subject: [FIX] base_import: disable tracking during validation Force the value tracking_disable to be make sure that the validation (which is supposed to have no impact), will not send any email. Fixes #3173 --- addons/base_import/static/src/js/import.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'addons/base_import/static/src/js/import.js') diff --git a/addons/base_import/static/src/js/import.js b/addons/base_import/static/src/js/import.js index 0ee88e0a203..916605d699c 100644 --- a/addons/base_import/static/src/js/import.js +++ b/addons/base_import/static/src/js/import.js @@ -363,9 +363,11 @@ 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(); + var tracking_disable = 'tracking_disable' in kwargs ? kwargs.tracking_disable : !this.$('#oe_import_tracking').prop('checked') + delete kwargs.tracking_disable kwargs.context = _.extend( {}, this.parent_context, - {tracking_disable: !this.$('#oe_import_tracking').prop('checked')} + {tracking_disable: tracking_disable} ); return this.Import.call('do', [this.id, fields, this.import_options()], kwargs) .then(undefined, function (error, event) { @@ -381,7 +383,7 @@ openerp.base_import = function (instance) { }) ; }, onvalidate: function () { - return this.call_import({ dryrun: true }) + return this.call_import({ dryrun: true, tracking_disable: true }) .done(this.proxy('validated')); }, onimport: function () { -- cgit v1.2.3 From 8049d1e855204c64b56577ecdc32f838f494474c Mon Sep 17 00:00:00 2001 From: Nicolas Martinelli Date: Thu, 9 Jun 2016 14:57:16 +0200 Subject: [FIX] base_import: file type on Windows MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a user imports a CSV file on Windows, the "CSV Format Options…" field does not appear. This is an issue since it might be necessary to tune these options depending on the file, e.g. change the encoding. For some unknown reason, on Windows, the file type is empty whatever the browser used. Therefore, we fall back on the extension of the file. opw-680347 --- addons/base_import/static/src/js/import.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'addons/base_import/static/src/js/import.js') diff --git a/addons/base_import/static/src/js/import.js b/addons/base_import/static/src/js/import.js index 5c57ff708f5..1451e073473 100644 --- a/addons/base_import/static/src/js/import.js +++ b/addons/base_import/static/src/js/import.js @@ -237,7 +237,12 @@ var DataImport = Widget.extend(ControlPanelMixin, { if (!this.$('input.oe_import_file').val()) { return; } this.$el.removeClass('oe_import_preview oe_import_error'); - this.$el.find('.oe_import_toggle').toggle((this.$('input.oe_import_file')[0].files[0].type == "text/csv")); + var import_toggle = false; + var file = this.$('input.oe_import_file')[0].files[0]; + if (file.type === "text/csv" || (file.type === "" && _.last(file.name.split('.')) === "csv")) { + import_toggle = true; + } + this.$el.find('.oe_import_toggle').toggle(import_toggle); jsonp(this.$el, { url: '/base_import/set_file' }, this.proxy('settings_changed')); -- cgit v1.2.3 From 285deb9a14f48693d0291820012a4040d015b501 Mon Sep 17 00:00:00 2001 From: Olivier Dony Date: Tue, 14 Jun 2016 11:44:35 +0200 Subject: [FIX] base_import: handle other cases of wrong CVS mime types Improves 8049d1e855204c64b56577ecdc32f838f494474c for other detected cases, e.g. on Firefox + OSX. opw-680347 --- addons/base_import/static/src/js/import.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'addons/base_import/static/src/js/import.js') diff --git a/addons/base_import/static/src/js/import.js b/addons/base_import/static/src/js/import.js index 1451e073473..d489bc49474 100644 --- a/addons/base_import/static/src/js/import.js +++ b/addons/base_import/static/src/js/import.js @@ -239,7 +239,8 @@ var DataImport = Widget.extend(ControlPanelMixin, { this.$el.removeClass('oe_import_preview oe_import_error'); var import_toggle = false; var file = this.$('input.oe_import_file')[0].files[0]; - if (file.type === "text/csv" || (file.type === "" && _.last(file.name.split('.')) === "csv")) { + // some platforms send text/csv, application/csv, or other things if Excel is prevent + if ((file.type && _.last(file.type.split('/')) === "csv") || ( _.last(file.name.split('.')) === "csv")) { import_toggle = true; } this.$el.find('.oe_import_toggle').toggle(import_toggle); -- cgit v1.2.3