diff --git a/_locales/en/messages.json b/_locales/en/messages.json index d3aa0bb2..0248d1d5 100644 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -371,5 +371,11 @@ }, "resetInvidiousInstanceAlert": { "message": "You are about to reset the Invidious instance list?" + }, + "noInstancesAdded": { + "message": "No extra instances added yet" + }, + "currentInstances": { + "message": "Current Instances:" } } diff --git a/options/options.html b/options/options.html index af6f4701..698d71ae 100644 --- a/options/options.html +++ b/options/options.html @@ -63,6 +63,12 @@
__MSG_resetInvidiousInstance__
+ +
+
+ + __MSG_currentInstances__ + diff --git a/options/options.js b/options/options.js index c8dd00e7..3a131af7 100644 --- a/options/options.js +++ b/options/options.js @@ -13,7 +13,7 @@ async function init() { // Set all of the toggle options to the correct option let optionsContainer = document.getElementById("options"); - let optionsElements = optionsContainer.children; + let optionsElements = optionsContainer.querySelectorAll("*"); for (let i = 0; i < optionsElements.length; i++) { switch (optionsElements[i].getAttribute("option-type")) { @@ -60,6 +60,23 @@ async function init() { let keybindButton = optionsElements[i].querySelector(".trigger-button"); keybindButton.addEventListener("click", () => activateKeybindChange(optionsElements[i])); + break; + case "display": + let displayOption = optionsElements[i].getAttribute("sync-option") + let displayText = SB.config[displayOption]; + optionsElements[i].innerText = displayText; + + // See if anything extra must be run + switch (displayOption) { + case "invidiousInstances": + if (!displayText || displayText.length == 0) { + optionsElements[i].innerText = chrome.i18n.getMessage("noInstancesAdded"); + } else { + optionsElements[i].innerText = displayText.join(', '); + } + break; + } + break; } } @@ -266,8 +283,6 @@ function activateTextChange(element) { SB.config[option].push(textBox.value); - SB.config[option] = SB.config[option]; - let checkbox = document.querySelector("#support-invidious input"); checkbox.checked = true;