From 2a0b03ac51cc5ca9a2408c1265cb507dd5a74406 Mon Sep 17 00:00:00 2001 From: nobody Date: Sun, 4 Dec 2022 12:26:55 +0100 Subject: [PATCH] Fixed: Settings import function (#1234) --- core/storage-manager.js | 39 +++++++++++++++----------------------- pages/updates/updates.html | 3 ++- 2 files changed, 17 insertions(+), 25 deletions(-) diff --git a/core/storage-manager.js b/core/storage-manager.js index 91318a15..46c23ea0 100644 --- a/core/storage-manager.js +++ b/core/storage-manager.js @@ -120,12 +120,21 @@ storageManager.startImportFilePicker = function () { }; storageManager.handleImportFilePicker = function () { - return new Promise((resolve) => { - let file = document.getElementById('import-file-picker').files[0]; - storageManager._readFile(file) - .then(storageManager._validation); - resolve(); - }); + let file, reader; + file = document.getElementById('import-file-picker').files[0]; + + reader = new FileReader(); + reader.readAsText(file, 'UTF-8'); + + reader.onload = (ev) => { + let content = ev.target.result; + try { + storageManager._validation(JSON.parse(content)); + } catch (err) { + console.error(`[ LocalCDN ] ${err}`); + alert(err); + } + }; }; @@ -143,27 +152,9 @@ storageManager._handleStorageChanged = function (type) { } }; -storageManager._readFile = function (file) { - return new Promise((resolve, reject) => { - let reader = new FileReader(); - reader.onload = () => { - resolve(reader.result); - }; - reader.onerror = reject; - reader.readAsText(file); - }); -}; - storageManager._validation = function (content) { let imported = {}; - try { - JSON.parse(content); - } catch (err) { - console.error(`[ LocalCDN ] ${err}`); - alert(err); - } - // Delete old keys if (content.whitelistedDomains !== undefined) { content.allowlistedDomains = content.whitelistedDomains; diff --git a/pages/updates/updates.html b/pages/updates/updates.html index abd15283..b6e51122 100644 --- a/pages/updates/updates.html +++ b/pages/updates/updates.html @@ -25,8 +25,9 @@

New in LocalCDN:

-

+

Fixed