diff --git a/docs/assets/js/src/customizer.js b/docs/assets/js/src/customizer.js index b0fefb0f03ab3d04d763e406932420c145bbc6ae..407427a15d2cdf1b3d3a77eec92bed877dab77e4 100644 --- a/docs/assets/js/src/customizer.js +++ b/docs/assets/js/src/customizer.js @@ -361,32 +361,26 @@ window.onload = function () { // wait for load in a dumb way because B-0 var file = (e.originalEvent.hasOwnProperty('dataTransfer')) ? e.originalEvent.dataTransfer.files[0] : e.originalEvent.target.files[0] - if (!file.type.match('application/json')) { - return showAlert('danger', '<strong>Ruh roh.</strong> We can only read <code>.json</code> files. Please try again.', importDropTarget) - } - var reader = new FileReader() - reader.onload = (function () { - return function (e) { - var text = e.target.result + reader.onload = function (e) { + var text = e.target.result - try { - var json = JSON.parse(text) - - if (typeof json != 'object') { - throw new Error('JSON data from config file is not an object.') - } + try { + var json = JSON.parse(text) - updateCustomizerFromJson(json) - showAlert('success', '<strong>Woohoo!</strong> Your configuration was successfully uploaded. Tweak your settings, then hit Download.', importDropTarget) - } catch (err) { - return showAlert('danger', '<strong>Shucks.</strong> We can only read valid <code>.json</code> files. Please try again.', importDropTarget) + if (!$.isPlainObject(json)) { + throw new Error('JSON data from config file is not an object.') } + + updateCustomizerFromJson(json) + showAlert('success', '<strong>Woohoo!</strong> Your configuration was successfully uploaded. Tweak your settings, then hit Download.', importDropTarget) + } catch (err) { + return showAlert('danger', '<strong>Shucks.</strong> We can only read valid <code>.json</code> files. Please try again.', importDropTarget) } - })(file) + } - reader.readAsText(file) + reader.readAsText(file, 'utf-8') } function handleConfigDragOver(e) {