Skip to content
This repository was archived by the owner on Mar 22, 2018. It is now read-only.

Commit 0b26280

Browse files
committed
Store properties to storage.sync
1 parent 3cc4082 commit 0b26280

File tree

2 files changed

+43
-46
lines changed

2 files changed

+43
-46
lines changed

extension/background.js

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -74,35 +74,37 @@ sendMessageToHost({
7474
version: "2.0.9"
7575
});
7676

77-
// Read the local storage for excluded keywords
78-
if (localStorage["uget-keywords-exclude"]) {
79-
keywordsToExclude = localStorage["uget-keywords-exclude"].split(/[\s,]+/);
80-
} else {
81-
localStorage["uget-keywords-exclude"] = '';
82-
}
83-
84-
// Read the local storage for included keywords
85-
if (localStorage["uget-keywords-include"]) {
86-
keywordsToInclude = localStorage["uget-keywords-include"].split(/[\s,]+/);
87-
} else {
88-
localStorage["uget-keywords-include"] = '';
89-
}
77+
// Read the storage for excluded keywords
78+
current_browser.storage.sync.get(function(items) {
79+
if (items["uget-keywords-exclude"]) {
80+
keywordsToExclude = items["uget-keywords-exclude"].split(/[\s,]+/);
81+
} else {
82+
current_browser.storage.sync.set({"uget-keywords-exclude": ''});
83+
}
9084

91-
// Read the local storage for the minimum file-size to interrupt
92-
if (localStorage["uget-min-file-size"]) {
93-
minFileSizeToInterrupt = parseInt(localStorage["uget-min-file-size"]);
94-
} else {
95-
localStorage["uget-min-file-size"] = minFileSizeToInterrupt;
96-
}
85+
// Read the local storage for included keywords
86+
if (items["uget-keywords-include"]) {
87+
keywordsToInclude = items["uget-keywords-include"].split(/[\s,]+/);
88+
} else {
89+
current_browser.storage.sync.set({"uget-keywords-include": ''});
90+
}
9791

98-
// Read the local storage for enabled flag
99-
if (!localStorage["uget-interrupt"]) {
100-
localStorage["uget-interrupt"] = 'true';
101-
} else {
102-
var interrupt = (localStorage["uget-interrupt"] == "true");
103-
setInterruptDownload(interrupt);
104-
}
92+
// Read the local storage for the minimum file-size to interrupt
93+
if (items["uget-min-file-size"]) {
94+
minFileSizeToInterrupt = parseInt(items["uget-min-file-size"]);
95+
} else {
96+
current_browser.storage.sync.set({"uget-min-file-size": minFileSizeToInterrupt});
97+
}
10598

99+
// Read the local storage for enabled flag
100+
if (!items["uget-interrupt"]) {
101+
// Keep the value string
102+
current_browser.storage.sync.set({"uget-interrupt": 'true'});
103+
} else {
104+
var interrupt = (items["uget-interrupt"] == "true");
105+
setInterruptDownload(interrupt);
106+
}
107+
});
106108
// Message format to send the download information to the uget-chrome-wrapper
107109
var message = {
108110
url: '',
@@ -464,6 +466,8 @@ function parseCookies(cookies_arr) {
464466
function updateKeywords(include, exclude) {
465467
keywordsToInclude = include.split(/[\s,]+/);
466468
keywordsToExclude = exclude.split(/[\s,]+/);
469+
current_browser.storage.sync.set({"uget-keywords-include": include});
470+
current_browser.storage.sync.set({"uget-keywords-exclude": exclude});
467471
}
468472

469473
/**
@@ -472,6 +476,7 @@ function updateKeywords(include, exclude) {
472476
*/
473477
function updateMinFileSize(size) {
474478
minFileSizeToInterrupt = size;
479+
current_browser.storage.sync.set({"uget-min-file-size": size});
475480
}
476481

477482
/**
@@ -519,6 +524,6 @@ function setInterruptDownload(interrupt, writeToStorage) {
519524
});
520525
}
521526
if (writeToStorage) {
522-
localStorage["uget-interrupt"] = interrupt.toString();
527+
current_browser.storage.sync.set({"uget-interrupt": interrupt.toString()});
523528
}
524529
}

extension/popup.js

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -35,41 +35,31 @@ try {
3535
}
3636

3737
function saveChanges() {
38-
var keywordsToExclude = document.getElementById("keywordsToExclude").value;
39-
var keywordsToInclude = document.getElementById("keywordsToInclude").value;
38+
var keywordsToExclude = document.getElementById("keywordsToExclude").value.trim();
39+
var keywordsToInclude = document.getElementById("keywordsToInclude").value.trim();
4040
var interrupt = document.getElementById('chk-interrupt').checked;
4141
var minFileSize = parseInt(document.getElementById("fileSize").value) * 1024;
4242
if (isNaN(minFileSize)) {
4343
minFileSize = 300 * 1024;
4444
} else if(minFileSize < 0) {
45-
minFileSize = 0;
45+
minFileSize = -1024; // Which is -1 KB
4646
}
4747

48-
localStorage["uget-keywords-exclude"] = keywordsToExclude;
49-
localStorage["uget-keywords-include"] = keywordsToInclude;
50-
localStorage["uget-min-file-size"] = minFileSize;
51-
5248
current_browser.runtime.getBackgroundPage(function(backgroundPage) {
5349
backgroundPage.updateKeywords(keywordsToInclude, keywordsToExclude);
5450
backgroundPage.setInterruptDownload(interrupt, true);
5551
backgroundPage.updateMinFileSize(minFileSize);
5652
});
5753

5854
window.close();
55+
alert(document.getElementById("fileSize").value);
5956
}
6057

6158
// When the popup HTML has loaded
6259
window.addEventListener('load', function(evt) {
6360
// Show the system status
6461
current_browser.runtime.getBackgroundPage(function(backgroundPage) {
6562
var state = backgroundPage.getState();
66-
// if (state == 0) {
67-
// document.getElementById('info').innerHTML = "Info: Found uGet and uget-chrome-wrapper";
68-
// } else if (state == 1) {
69-
// document.getElementById('warn').innerHTML = "Warning: Please update the uget-chrome-wrapper to the latest version";
70-
// } else {
71-
// document.getElementById('error').innerHTML = "Error: Unable to connect to the uget-chrome-wrapper";
72-
// }
7363
if (state == 0) {
7464
// document.getElementById('info').innerHTML = "Info: Found uGet and uget-chrome-wrapper";
7565
document.getElementById('info').style.display = 'block';
@@ -90,10 +80,12 @@ window.addEventListener('load', function(evt) {
9080
}
9181
});
9282

93-
let interrupt = (localStorage["uget-interrupt"] == "true");
83+
let interrupt = (current_browser.storage.sync["uget-interrupt"] == "true");
9484
document.getElementById('save').addEventListener('click', saveChanges);
95-
document.getElementById('keywordsToExclude').value = localStorage["uget-keywords-exclude"];
96-
document.getElementById('keywordsToInclude').value = localStorage["uget-keywords-include"];
97-
document.getElementById('fileSize').value = localStorage["uget-min-file-size"] / 1024;
98-
document.getElementById('chk-interrupt').checked = interrupt;
85+
current_browser.storage.sync.get(function(items) {
86+
document.getElementById('keywordsToExclude').value = items["uget-keywords-exclude"];
87+
document.getElementById('keywordsToInclude').value = items["uget-keywords-include"];
88+
document.getElementById('fileSize').value = parseInt(items["uget-min-file-size"]) / 1024;
89+
document.getElementById('chk-interrupt').checked = items["uget-interrupt"] == "true";
90+
});
9991
});

0 commit comments

Comments
 (0)