Improve import and export UI. Fix race condition with office import.

This commit is contained in:
yflory
2020-01-20 11:35:36 +01:00
parent bc8fee8a29
commit 5a26be5531
2 changed files with 81 additions and 43 deletions

View File

@@ -66,8 +66,10 @@ define([
$files.on('change', function (e) {
var file = e.target.files[0];
var reader = new FileReader();
reader.onload = function (e) { f(e.target.result, file); };
if (cfg && cfg.binary) {
var parsed = file && file.name && /.+\.([^.]+)$/.exec(file.name);
var ext = parsed && parsed[1];
reader.onload = function (e) { f(e.target.result, file, ext); };
if (cfg && cfg.binary && cfg.binary.indexOf(ext) !== -1) {
reader.readAsArrayBuffer(file, type);
} else {
reader.readAsText(file, type);
@@ -1982,9 +1984,10 @@ define([
// Old import button, used in settings
button
.click(common.prepareFeedback(type))
.click(importContent((data && data.binary) ? 'application/octet-stream' : 'text/plain', function (content, file) {
callback(content, file);
}, {accept: data ? data.accept : undefined, binary: data ? data.binary : undefined }));
.click(importContent((data && data.binary) ? 'application/octet-stream' : 'text/plain', callback, {
accept: data ? data.accept : undefined,
binary: data ? data.binary : undefined
}));
//}
break;
case 'upload':