about summary refs log tree commit diff stats
path: root/pages/options
diff options
context:
space:
mode:
authorSimonBrazell <simon@brazell.com.au>2020-11-04 21:55:42 +1100
committerSimonBrazell <simon@brazell.com.au>2020-11-04 21:55:42 +1100
commit748f3d0f3a85a5f0acb26ae7e792935da6d9ad93 (patch)
tree018c2ebfb817613626d8b6b48ebdf7f73e1f6384 /pages/options
parentClean up invidious random instance list (diff)
downloadlibredirect-748f3d0f3a85a5f0acb26ae7e792935da6d9ad93.zip
Closes #113 - Added support for FreeTube
Diffstat (limited to 'pages/options')
-rw-r--r--pages/options/options.html25
-rw-r--r--pages/options/options.js7
2 files changed, 32 insertions, 0 deletions
diff --git a/pages/options/options.html b/pages/options/options.html
index 6641e5c4..3bddd403 100644
--- a/pages/options/options.html
+++ b/pages/options/options.html
@@ -175,6 +175,31 @@
       <section class="settings-block">
         <table
           class="option"
+          aria-label="Redirect YouTube to FreeTube where possible"
+        >
+          <tbody>
+            <tr>
+              <td>
+                <h1 data-localise="__MSG_useFreeTube__">
+                  Use FreeTube over Invidious when possible
+                </h1>
+              </td>
+              <td>
+                <input
+                  aria-hidden="true"
+                  id="useFreeTube"
+                  type="checkbox"
+                  checked
+                />&nbsp;
+                <label for="useFreeTube" class="checkbox-label"> </label>
+              </td>
+            </tr>
+          </tbody>
+        </table>
+      </section>
+      <section class="settings-block">
+        <table
+          class="option"
           aria-label="Always proxy videos through Invidious"
         >
           <tbody>
diff --git a/pages/options/options.js b/pages/options/options.js
index 8149be7b..e6bb9837 100644
--- a/pages/options/options.js
+++ b/pages/options/options.js
@@ -71,6 +71,7 @@ let invidiousPlayerStyle = document.getElementById("invidious-player-style");
 let invidiousSubtitles = document.getElementById("invidious-subtitles");
 let invidiousAutoplay = document.getElementById("invidious-autoplay");
 let theme = document.getElementById("theme");
+let useFreeTube = document.getElementById("useFreeTube");
 let exceptions;
 
 window.browser = window.browser || window.chrome;
@@ -119,6 +120,7 @@ browser.storage.sync.get(
     "invidiousAutoplay",
     "exceptions",
     "theme",
+    "useFreeTube",
   ],
   (result) => {
     theme.value = result.theme || "";
@@ -146,6 +148,7 @@ browser.storage.sync.get(
     invidiousPlayerStyle.value = result.invidiousPlayerStyle || "";
     invidiousSubtitles.value = result.invidiousSubtitles || "";
     invidiousAutoplay.checked = result.invidiousAutoplay;
+    useFreeTube.checked = result.useFreeTube;
   }
 );
 
@@ -315,6 +318,10 @@ persistInvidiousPrefs.addEventListener("change", (event) => {
   browser.storage.sync.set({ persistInvidiousPrefs: event.target.checked });
 });
 
+useFreeTube.addEventListener("change", (event) => {
+  browser.storage.sync.set({ useFreeTube: event.target.checked });
+});
+
 let invidiousVolumeChange = debounce(() => {
   document.querySelector(
     "#volume-value"