diff options
| author | SimonBrazell <simon@brazell.com.au> | 2020-05-15 09:46:01 +1000 |
|---|---|---|
| committer | SimonBrazell <simon@brazell.com.au> | 2020-05-15 09:46:01 +1000 |
| commit | 0d252b53ec6c28b574c7b101d2fe76424c3ea836 (patch) | |
| tree | 0568a5780473b2ce83ff2ffaeaf1e33b99f7abef /pages/options/options.js | |
| parent | 83296f897212f962f55c3cfe6a3897499ac2688c (diff) | |
| download | privacy-redirect-0d252b53ec6c28b574c7b101d2fe76424c3ea836.tar.gz privacy-redirect-0d252b53ec6c28b574c7b101d2fe76424c3ea836.tar.bz2 privacy-redirect-0d252b53ec6c28b574c7b101d2fe76424c3ea836.zip | |
Closes #49 - added to options menu too & added privacy policyv1.1.27
Diffstat (limited to 'pages/options/options.js')
| -rw-r--r-- | pages/options/options.js | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/pages/options/options.js b/pages/options/options.js index 8b848e6..5e25a49 100644 --- a/pages/options/options.js +++ b/pages/options/options.js @@ -136,10 +136,28 @@ function debounce(func, wait, immediate) { }; }; +function parseURL(urlString) { + if (urlString) { + try { + const url = new URL(urlString); + if (url.username && url.password) { + return `${url.protocol}//${url.username}:${url.password}@${url.host}` + } else { + return url.origin; + } + } catch (error) { + console.log(error); + return ''; + } + } else { + return ''; + } +} + let nitterInstanceChange = debounce(() => { if (nitterInstance.checkValidity()) { browser.storage.sync.set({ - nitterInstance: nitterInstance.value ? new URL(nitterInstance.value).origin : '' + nitterInstance: parseURL(nitterInstance.value) }); } }, 500); @@ -148,7 +166,7 @@ nitterInstance.addEventListener('input', nitterInstanceChange); let invidiousInstanceChange = debounce(() => { if (invidiousInstance.checkValidity()) { browser.storage.sync.set({ - invidiousInstance: invidiousInstance.value ? new URL(invidiousInstance.value).origin : '' + invidiousInstance: parseURL(invidiousInstance.value) }); } }, 500); @@ -157,7 +175,7 @@ invidiousInstance.addEventListener('input', invidiousInstanceChange); let bibliogramInstanceChange = debounce(() => { if (bibliogramInstance.checkValidity()) { browser.storage.sync.set({ - bibliogramInstance: bibliogramInstance.value ? new URL(bibliogramInstance.value).origin : '' + bibliogramInstance: parseURL(bibliogramInstance.value) }); } }, 500); @@ -166,7 +184,7 @@ bibliogramInstance.addEventListener('input', bibliogramInstanceChange); let osmInstanceChange = debounce(() => { if (osmInstance.checkValidity()) { browser.storage.sync.set({ - osmInstance: osmInstance.value ? new URL(osmInstance.value).origin : '' + osmInstance: parseURL(osmInstance.value) }); } }, 500); |
