diff options
Diffstat (limited to 'src/pages/popup')
-rw-r--r-- | src/pages/popup/popup.html | 38 | ||||
-rw-r--r-- | src/pages/popup/popup.js | 93 | ||||
-rw-r--r-- | src/pages/popup/popup.pug | 41 |
3 files changed, 84 insertions, 88 deletions
diff --git a/src/pages/popup/popup.html b/src/pages/popup/popup.html index 3eb6ba19..5b00b084 100644 --- a/src/pages/popup/popup.html +++ b/src/pages/popup/popup.html @@ -8,35 +8,35 @@ </head> <body dir="auto"> <div class="some-block" id="youtube"><a class="title" href="https://youtube.com"><img src="../../assets/images/youtube-icon.png"> - <h4>YouTube</h4></a> + <h4 data-localise="__MSG_youtube__">YouTube</h4></a> <input id="disable-youtube" type="checkbox"> </div> <div class="some-block" id="youtubeMusic"><a class="title" href="https://music.youtube.com"><img src="../../assets/images/youtube-music-icon.png"> - <h4>YT Music</h4></a> + <h4 data-localise="__MSG_ytmusic__">YT Music</h4></a> <input id="disable-youtubeMusic" type="checkbox"> </div> <div class="some-block" id="twitter"><a class="title" href="https://twitter.com"><img src="../../assets/images/twitter-icon.png"> - <h4>Twitter</h4></a> + <h4 data-localise="__MSG_twitter__">Twitter</h4></a> <input id="disable-nitter" type="checkbox"> </div> <div class="some-block" id="instagram"><a class="title" href="https://instagram.com"><img src="../../assets/images/instagram-icon.png"> - <h4>Instagram</h4></a> + <h4 data-localise="__MSG_instagram__">Instagram</h4></a> <input id="disable-bibliogram" type="checkbox"> </div> <div class="some-block" id="tikTok"><a class="title" href="https://tiktok.com"><img src="../../assets/images/tiktok-icon.png"> - <h4>TikTok</h4></a> + <h4 data-localise="__MSG_tiktok__">TikTok</h4></a> <input id="disable-tiktok" type="checkbox"> </div> <div class="some-block" id="imgur"><a class="title" href="https://imgur.com"><img src="../../assets/images/imgur-icon.png"> - <h4>Imgur</h4></a> + <h4 data-localise="__MSG_imgur__">Imgur</h4></a> <input id="disable-imgur" type="checkbox"> </div> <div class="some-block" id="reddit"><a class="title" href="https://reddit.com"><img src="../../assets/images/reddit-icon.png"> - <h4>Reddit</h4></a> + <h4 data-localise="__MSG_reddit__">Reddit</h4></a> <input id="disable-reddit" type="checkbox"> </div> <div class="some-block" id="wikipedia"><a class="title" href="https://wikipedia.com"><img src="../../assets/images/wikipedia-icon.svg"> - <h4>Wikipedia</h4></a> + <h4 data-localise="__MSG_wikipedia__">Wikipedia</h4></a> <input id="disable-wikipedia" type="checkbox"> </div> <div class="some-block" id="medium"><a class="title" href="https://medium.com"> @@ -45,63 +45,63 @@ <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse> <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse> </svg> - <h4>Medium</h4></a> + <h4 data-localise="__MSG_medium__">Medium</h4></a> <input id="disable-medium" type="checkbox"> </div> <div class="some-block" id="peertube"><a class="title" href="https://search.joinpeertube.org"><img src="../../assets/images/peertube-icon.svg"> - <h4>PeerTube</h4></a> + <h4 data-localise="__MSG_peertube__">PeerTube</h4></a> <input id="disable-peertube" type="checkbox"> </div> <div class="some-block" id="lbry"><a class="title" href="https://odysee.com/"><img src="../../assets/images/lbry-icon.png"> - <h4>LBRY</h4></a> + <h4 data-localise="__MSG_lbry__">LBRY</h4></a> <input id="disable-lbry" type="checkbox"> </div> <div class="some-block" id="search"><a class="title" href="https://search.libredirect.invalid"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"> <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path> </svg> - <h4>Search</h4></a> + <h4 data-localise="__MSG_search__">Search</h4></a> <input id="disable-search" type="checkbox"> </div> <div class="some-block" id="translate"><a class="title" href="https://translate.google.com"> <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path> </svg> - <h4>Translate</h4></a> + <h4 data-localise="__MSG_translate__">Translate</h4></a> <input id="disable-simplyTranslate" type="checkbox"> </div> <div class="some-block" id="maps"><a class="title" href="https://www.openstreetmap.org"> <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path> </svg> - <h4>Maps</h4></a> + <h4 data-localise="__MSG_maps__">Maps</h4></a> <input id="disable-osm" type="checkbox"> </div> <div class="some-block" id="sendTargets"><a class="title" href="https://send.libredirect.invalid"> <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path> </svg> - <h4>Send Files</h4></a> + <h4 data-localise="__MSG_sendFiles__">Send Files</h4></a> <input id="disable-sendTargets" type="checkbox"> </div> <hr> <div class="some-block" id="change_instance_div"><a class="title button" id="change_instance"> - <h4>Change Instance</h4> + <h4 data-localise="__MSG_switchInstance__">Change Instance</h4> <svg xmlns="http://www.w3.org/2000/svg" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor"> <path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"></path> </svg></a></div> <div class="some-block" id="copy_raw_div" title="Copy the original redirected link"> <a class="title button" id="copy_raw"> - <h4>Copy Raw</h4> + <h4 data-localise="__MSG_copyRaw__">Copy Raw</h4> <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> <path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"></path> </svg></a></div> <div class="some-block" id="unify_div" title="Unify cookies across all selected instances"><a class="title button" id="unify"> - <h4>Unify Settings</h4> + <h4 data-localise="__MSG_unifySettings__">Unify Settings</h4> <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> <path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path> </svg></a></div> <div class="some-block"><a class="title button" id="more-options"> - <h4>Settings</h4> + <h4 data-localise="__MSG_settings__">Settings</h4> <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor"> <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path> </svg></a></div> diff --git a/src/pages/popup/popup.js b/src/pages/popup/popup.js index 73890b07..5d309f63 100644 --- a/src/pages/popup/popup.js +++ b/src/pages/popup/popup.js @@ -1,8 +1,42 @@ "use strict"; window.browser = window.browser || window.chrome; -import utils from "../../assets/javascripts/helpers/utils.js"; -import generalHelper from "../../assets/javascripts/helpers/general.js"; +import utils from "../../assets/javascripts/utils.js"; +import generalHelper from "../../assets/javascripts/general.js"; + +utils.unify(true).then(r => { + if (!r) document.getElementById('unify_div').style.display = 'none'; + else { + const unify = document.getElementById('unify'); + unify.addEventListener("click", () => + browser.runtime.sendMessage({ function: 'unify' }, + response => { + if (response && response.response) { + const textElement = document.getElementById('unify').getElementsByTagName('h4')[0] + const oldHtml = textElement.innerHTML; + textElement.innerHTML = browser.i18n.getMessage('unified'); + setTimeout(() => textElement.innerHTML = oldHtml, 1000); + } + }) + ); + } +}) + +utils.switchInstance(true).then(r => { + if (!r) document.getElementById("change_instance_div").style.display = 'none'; + else document.getElementById("change_instance").addEventListener("click", () => utils.switchInstance(false)); +}); + +utils.copyRaw(true).then(r => { + if (!r) document.getElementById('copy_raw_div').style.display = 'none'; + else { + const copy_raw = document.getElementById('copy_raw'); + copy_raw.addEventListener("click", () => utils.copyRaw(false, copy_raw)); + } +}) + +document.getElementById("more-options").addEventListener("click", () => browser.runtime.openOptionsPage()); + let disableTwitterElement = document.getElementById("disable-nitter"); let disableYoutubeElement = document.getElementById("disable-youtube"); @@ -37,6 +71,8 @@ browser.storage.local.get( "disablePeertubeTargets", "disableLbryTargets", "disableSendTarget", + + 'popupFrontends', ], r => { disableTwitterElement.checked = !r.disableTwitter; @@ -53,7 +89,13 @@ browser.storage.local.get( disableMediumElement.checked = !r.disableMedium; disablePeertubeElement.checked = !r.disablePeertubeTargets; disableLbryElement.checked = !r.disableLbryTargets; - disableSendTargetsElement.checked = r.disableSendTarget; + disableSendTargetsElement.checked = !r.disableSendTarget; + + for (const frontend of generalHelper.allPopupFrontends) + if (!r.popupFrontends.includes(frontend)) + document.getElementById(frontend).classList.add("hide") + else + document.getElementById(frontend).classList.remove("hide") } ) @@ -77,51 +119,6 @@ document.addEventListener("change", () => { }); }) -utils.switchInstance(true).then(r => { - if (!r) document.getElementById("change_instance_div").style.display = 'none'; - else document.getElementById("change_instance").addEventListener("click", () => utils.switchInstance(false)); -}); - -utils.copyRaw(true).then(r => { - if (!r) document.getElementById('copy_raw_div').style.display = 'none'; - else { - const copy_raw = document.getElementById('copy_raw'); - copy_raw.addEventListener("click", () => utils.copyRaw(false, copy_raw)); - } -}) - - -utils.unify(true).then(r => { - if (!r) document.getElementById('unify_div').style.display = 'none'; - else { - const unify = document.getElementById('unify'); - unify.addEventListener("click", () => - browser.runtime.sendMessage({ function: 'unify' }, - response => { - if (response && response.response) { - const textElement = document.getElementById('unify').getElementsByTagName('h4')[0] - const oldHtml = textElement.innerHTML; - textElement.innerHTML = 'Unified'; - setTimeout(() => textElement.innerHTML = oldHtml, 1000); - } - }) - ); - } -}) - -document.getElementById("more-options").addEventListener("click", () => browser.runtime.openOptionsPage()); - -browser.storage.local.get( - 'popupFrontends', - r => { - for (const frontend of generalHelper.allPopupFrontends) - if (!r.popupFrontends.includes(frontend)) - document.getElementById(frontend).classList.add("hide") - else - document.getElementById(frontend).classList.remove("hide") - } -); - for (const a of document.getElementsByTagName('a')) { a.addEventListener('click', e => { if (!a.classList.contains('button')) { diff --git a/src/pages/popup/popup.pug b/src/pages/popup/popup.pug index 94f65eae..a2c8de93 100644 --- a/src/pages/popup/popup.pug +++ b/src/pages/popup/popup.pug @@ -11,117 +11,116 @@ html(lang="en") #youtube.some-block a.title(href="https://youtube.com") img(src="../../assets/images/youtube-icon.png") - h4 YouTube + h4(data-localise="__MSG_youtube__") YouTube input#disable-youtube(type="checkbox") #youtubeMusic.some-block a.title(href="https://music.youtube.com") img(src="../../assets/images/youtube-music-icon.png") - h4 YT Music + h4(data-localise="__MSG_ytmusic__") YT Music input#disable-youtubeMusic(type="checkbox") #twitter.some-block a.title(href="https://twitter.com") img(src="../../assets/images/twitter-icon.png") - h4 Twitter + h4(data-localise="__MSG_twitter__") Twitter input#disable-nitter(type="checkbox") #instagram.some-block a.title(href="https://instagram.com") img(src="../../assets/images/instagram-icon.png") - h4 Instagram + h4(data-localise="__MSG_instagram__") Instagram input#disable-bibliogram(type="checkbox") #tikTok.some-block a.title(href="https://tiktok.com") img(src="../../assets/images/tiktok-icon.png") - h4 TikTok + h4(data-localise="__MSG_tiktok__") TikTok input#disable-tiktok(type="checkbox") #imgur.some-block a.title(href="https://imgur.com") img(src="../../assets/images/imgur-icon.png") - h4 Imgur + h4(data-localise="__MSG_imgur__") Imgur input#disable-imgur(type="checkbox") #reddit.some-block a.title(href="https://reddit.com") img(src="../../assets/images/reddit-icon.png") - h4 Reddit + h4(data-localise="__MSG_reddit__") Reddit input#disable-reddit(type="checkbox") #wikipedia.some-block a.title(href="https://wikipedia.com") img(src="../../assets/images/wikipedia-icon.svg") - h4 Wikipedia + h4(data-localise="__MSG_wikipedia__") Wikipedia input#disable-wikipedia(type="checkbox") #medium.some-block a.title(href="https://medium.com") +medium - h4 Medium + h4(data-localise="__MSG_medium__") Medium input#disable-medium(type="checkbox") #peertube.some-block a.title(href="https://search.joinpeertube.org") img(src="../../assets/images/peertube-icon.svg") - h4 PeerTube + h4(data-localise="__MSG_peertube__") PeerTube input#disable-peertube(type="checkbox") #lbry.some-block a.title(href="https://odysee.com/") img(src="../../assets/images/lbry-icon.png") - h4 LBRY + h4(data-localise="__MSG_lbry__") LBRY input#disable-lbry(type="checkbox") #search.some-block a.title(href="https://search.libredirect.invalid") +search - h4 Search + h4(data-localise="__MSG_search__") Search input#disable-search(type="checkbox") #translate.some-block a.title(href="https://translate.google.com") +translate - h4 Translate + h4(data-localise="__MSG_translate__") Translate input#disable-simplyTranslate(type="checkbox") #maps.some-block a.title(href="https://www.openstreetmap.org") +maps - h4 Maps + h4(data-localise="__MSG_maps__") Maps input#disable-osm(type="checkbox") #sendTargets.some-block a.title(href="https://send.libredirect.invalid") +send - h4 Send Files + h4(data-localise="__MSG_sendFiles__") Send Files input#disable-sendTargets(type="checkbox") hr #change_instance_div.some-block a#change_instance.title.button - h4 Change Instance + h4(data-localise="__MSG_switchInstance__") Change Instance +change_instance #copy_raw_div.some-block(title="Copy the original redirected link") a#copy_raw.title.button - h4 Copy Raw + h4(data-localise="__MSG_copyRaw__") Copy Raw +copy_raw #unify_div.some-block(title="Unify cookies across all selected instances") a#unify.title.button - h4 Unify Settings + h4(data-localise="__MSG_unifySettings__") Unify Settings +unify .some-block a#more-options.title.button - h4 Settings + h4(data-localise="__MSG_settings__") Settings +settings .space script(type="module" src="../options/init.js") - script(type="module" src="./popup.js") - //- script(src="../../assets/javascripts/localise.js") \ No newline at end of file + script(type="module" src="./popup.js") \ No newline at end of file |