69 lines
2.3 KiB
JavaScript
69 lines
2.3 KiB
JavaScript
// Declare variables.
|
|
const browserStorage = browser.storage.local;
|
|
const tabPgInput = document.querySelector("#tabPageToLoad");
|
|
const saveBttn = document.querySelector("#saveButtonAction");
|
|
const delBttn = document.querySelector("#delButtonAction");
|
|
const messageDiv = document.querySelector("#alertMessage");
|
|
|
|
|
|
/* Asign signal handaling in settings page. */
|
|
// Save desired url....
|
|
saveBttn.addEventListener('click', () => {
|
|
let urlLink = tabPgInput.value;
|
|
let bannerTag = document.createElement("P");
|
|
let text = document.createTextNode("Saved Alt Tab Page to: " + urlLink);
|
|
urlLink = (urlLink.match(/(localhost)\b/)) ? urlLink.replace("localhost", "127.0.0.1") : urlLink;
|
|
urlLink = (urlLink.match(/^(http:\/\/|https:\/\/)/)) ? urlLink : "http://" + urlLink;
|
|
|
|
browserStorage.clear();
|
|
tabPgInput.value = urlLink;
|
|
bannerTag.style.padding = "0.5em";
|
|
bannerTag.style.background = "#80e03d";
|
|
bannerTag.style.color = "#ffffff";
|
|
bannerTag.append(text);
|
|
messageDiv.append(bannerTag);
|
|
|
|
browserStorage.set({ userSelectedTabPage : urlLink });
|
|
console.log("Saved Alt Tab Page to: " + urlLink);
|
|
clearMessages();
|
|
});
|
|
|
|
// Delete desired url and set Default marker....
|
|
delBttn.addEventListener('click', () => {
|
|
let bannerTag = document.createElement("P");
|
|
let text = document.createTextNode("Deleted " + tabPgInput.value +
|
|
" as setting and defaulting to Google...");
|
|
|
|
bannerTag.style.padding = "0.5em";
|
|
bannerTag.style.background = "#80e03d";
|
|
bannerTag.style.color = "#ffffff";
|
|
bannerTag.append(text);
|
|
messageDiv.append(bannerTag);
|
|
|
|
tabPgInput.value = "Default";
|
|
browserStorage.clear();
|
|
console.log("Deleted Alt Tab Page...");
|
|
clearMessages();
|
|
});
|
|
|
|
// On start load from settings
|
|
const loadOnStart = (restoredSettings) => {
|
|
let homeTabURL = restoredSettings.userSelectedTabPage;
|
|
|
|
console.log("Trying to load settings if any...");
|
|
if (homeTabURL !== "Default" && homeTabURL !== undefined) {
|
|
tabPgInput.value = homeTabURL
|
|
} else {
|
|
tabPgInput.value = "Default";
|
|
}
|
|
}
|
|
|
|
const clearMessages = () => {
|
|
setTimeout(function () {
|
|
messageDiv.innerHTML = "";
|
|
}, 4000);
|
|
}
|
|
|
|
const onError = (e) => { console.error(e); }
|
|
browserStorage.get().then(loadOnStart, onError);
|