aboutsummaryrefslogtreecommitdiffstats
path: root/src/js/about.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/js/about.js')
-rw-r--r--src/js/about.js93
1 files changed, 0 insertions, 93 deletions
diff --git a/src/js/about.js b/src/js/about.js
index 2e2c5c7..66155c6 100644
--- a/src/js/about.js
+++ b/src/js/about.js
@@ -33,101 +33,8 @@ var messager = vAPI.messaging.channel('about.js');
/******************************************************************************/
-var exportToFile = function() {
- var onUserDataReady = function(userData) {
- if (!userData) {
- return;
- }
- var now = new Date();
- var filename = vAPI.i18n('aboutBackupFilename')
- .replace('{{datetime}}', now.toLocaleString())
- .replace(/ +/g, '_');
- vAPI.download({
- 'url': 'data:text/plain;charset=utf-8,' + encodeURIComponent(JSON.stringify(userData, null, ' ')),
- 'filename': filename
- });
- };
-
- messager.send({ what: 'getUserData' }, onUserDataReady);
-};
-
-/******************************************************************************/
-
-var handleImportFilePicker = function() {
- var fileReaderOnLoadHandler = function() {
- var userData;
- try {
- userData = JSON.parse(this.result);
- if ( typeof userData !== 'object' ) {
- throw 'Invalid';
- }
- if ( typeof userData.userSettings !== 'object' ) {
- throw 'Invalid';
- }
- if ( typeof userData.netWhitelist !== 'string' ) {
- throw 'Invalid';
- }
- if ( typeof userData.filterLists !== 'object' ) {
- throw 'Invalid';
- }
- }
- catch (e) {
- userData = undefined;
- }
- if ( userData === undefined ) {
- window.alert(vAPI.i18n('aboutRestoreDataError'));
- return;
- }
- var time = new Date(userData.timeStamp);
- var msg = vAPI.i18n('aboutRestoreDataConfirm')
- .replace('{{time}}', time.toLocaleString());
- var proceed = window.confirm(msg);
- if ( proceed ) {
- messager.send({ what: 'restoreUserData', userData: userData });
- }
- };
-
- var file = this.files[0];
- if ( file === undefined || file.name === '' ) {
- return;
- }
- if ( file.type.indexOf('text') !== 0 ) {
- return;
- }
- var fr = new FileReader();
- fr.onload = fileReaderOnLoadHandler;
- fr.readAsText(file);
-};
-
-/******************************************************************************/
-
-var startImportFilePicker = function() {
- var input = document.getElementById('restoreFilePicker');
- // Reset to empty string, this will ensure an change event is properly
- // triggered if the user pick a file, even if it is the same as the last
- // one picked.
- input.value = '';
- input.click();
-};
-
-/******************************************************************************/
-
-var resetUserData = function() {
- var msg = vAPI.i18n('aboutResetDataConfirm');
- var proceed = window.confirm(msg);
- if ( proceed ) {
- messager.send({ what: 'resetUserData' });
- }
-};
-
-/******************************************************************************/
-
var onAppDataReady = function(appData) {
uDom('#aboutNameVer').html(appData.name + ' v' + appData.version);
- uDom('#export').on('click', exportToFile);
- uDom('#import').on('click', startImportFilePicker);
- uDom('#reset').on('click', resetUserData);
- uDom('#restoreFilePicker').on('change', handleImportFilePicker);
};
messager.send({ what: 'getAppData' }, onAppDataReady);