diff options
author | ManeraKai <manerakai@protonmail.com> | 2022-05-15 18:44:28 +0300 |
---|---|---|
committer | ManeraKai <manerakai@protonmail.com> | 2022-05-15 18:44:28 +0300 |
commit | ab44fd04ffa1055bd17a3da02017e8de3da88af2 (patch) | |
tree | 31480d540bcedd00c74ede926449af3ed34856bb /src/pages/options/search | |
parent | Merge branch 'master' of https://github.com/libredirect/libredirect (diff) | |
download | libredirect-ab44fd04ffa1055bd17a3da02017e8de3da88af2.zip |
Complete on supporting Unify #234
Diffstat (limited to 'src/pages/options/search')
-rw-r--r-- | src/pages/options/search/search.html | 394 | ||||
-rw-r--r-- | src/pages/options/search/search.js | 133 | ||||
-rw-r--r-- | src/pages/options/search/search.pug | 333 |
3 files changed, 64 insertions, 796 deletions
diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html index 45fed601..46914d19 100644 --- a/src/pages/options/search/search.html +++ b/src/pages/options/search/search.html @@ -12,9 +12,9 @@ <body class="option" dir="auto"> <section class="links"> <div class="title"> - <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 href="../general/general.html" data-localise="__MSG_general__">General</a> + <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 href="../general/general.html" data-localise="__MSG_general__">General</a> </div> <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div> <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div> @@ -25,33 +25,33 @@ <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div> <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div> <div class="title"> - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor"> - <circle cx="500" cy="500" r="500"></circle> - <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse> - <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse> - </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a> + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor"> + <circle cx="500" cy="500" r="500"></circle> + <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse> + <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse> + </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a> </div> <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div> <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div> <div class="title"> - <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><a class="selected" href="../search/search.html" data-localise="__MSG_search__">Search</a> + <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><a class="selected" href="../search/search.html" data-localise="__MSG_search__">Search</a> </div> <div class="title"> - <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a> + <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a> </div> <div class="title"> - <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> - <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path> - </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a> + <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a> </div> <div class="title"> - <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a> + <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a> </div> </section> <section class="option-block"> @@ -154,361 +154,7 @@ </div> </div> <div id="searxng"> - <div class="some-block option-block"> - <h4 data-localise="__MSG_enableCustomSettings__">Enable Custom Settings (will use cookies)</h4> - <input id="enable-searxng-custom-settings" type="checkbox"> - </div> <hr> - <div class="custom-settings"> - <div class="some-block option-block"> - <h2>General</h2> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Default categories</h4> - </div> - <div class="checklist-popup"> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <path d="M221.09 64a157.09 157.09 0 10157.09 157.09A157.1 157.1 0 00221.09 64z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></path> - <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32" d="M338.29 338.29L448 448"></path> - </svg>General - </div> - <input class="category_general" type="checkbox"> - </div> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <rect x="48" y="80" width="416" height="352" rx="48" ry="48" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></rect> - <circle cx="336" cy="176" r="32" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></circle> - <path d="M304 335.79l-90.66-90.49a32 32 0 00-43.87-1.3L48 352M224 432l123.34-123.34a32 32 0 0143.11-2L464 368" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - </svg>Images - </div> - <input class="category_images" type="checkbox"> - </div> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <path d="M112 111v290c0 17.44 17 28.52 31 20.16l247.9-148.37c12.12-7.25 12.12-26.33 0-33.58L143 90.84c-14-8.36-31 2.72-31 20.16z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></path> - </svg>Videos - </div> - <input class="category_videos" type="checkbox"> - </div> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <path d="M368 415.86V72a24.07 24.07 0 00-24-24H72a24.07 24.07 0 00-24 24v352a40.12 40.12 0 0040 40h328" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></path> - <path d="M416 464h0a48 48 0 01-48-48V128h72a24 24 0 0124 24v264a48 48 0 01-48 48z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></path> - <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M240 128h64M240 192h64M112 256h192M112 320h192M112 384h192"></path> - <path d="M176 208h-64a16 16 0 01-16-16v-64a16 16 0 0116-16h64a16 16 0 0116 16v64a16 16 0 01-16 16z"></path> - </svg>News - </div> - <input class="category_news" type="checkbox"> - </div> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <path d="M256 48c-79.5 0-144 61.39-144 137 0 87 96 224.87 131.25 272.49a15.77 15.77 0 0025.5 0C304 409.89 400 272.07 400 185c0-75.61-64.5-137-144-137z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - <circle cx="256" cy="192" r="48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></circle> - </svg>Maps - </div> - <input class="category_map" type="checkbox"> - </div> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <path d="M192 218v-6c0-14.84 10-27 24.24-30.59l174.59-46.68A20 20 0 01416 154v22" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - <path d="M416 295.94v80c0 13.91-8.93 25.59-22 30l-22 8c-25.9 8.72-52-10.42-52-38h0a33.37 33.37 0 0123-32l51-18.15c13.07-4.4 22-15.94 22-29.85V58a10 10 0 00-12.6-9.61L204 102a16.48 16.48 0 00-12 16v226c0 13.91-8.93 25.6-22 30l-52 18c-13.88 4.68-22 17.22-22 32h0c0 27.58 26.52 46.55 52 38l22-8c13.07-4.4 22-16.08 22-30v-80" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - </svg>Music - </div> - <input class="category_music" type="checkbox"> - </div> - <div> - <div> - <svg class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true"> - <path d="M434.8 137.65l-149.36-68.1c-16.19-7.4-42.69-7.4-58.88 0L77.3 137.65c-17.6 8-17.6 21.09 0 29.09l148 67.5c16.89 7.7 44.69 7.7 61.58 0l148-67.5c17.52-8 17.52-21.1-.08-29.09zM160 308.52l-82.7 37.11c-17.6 8-17.6 21.1 0 29.1l148 67.5c16.89 7.69 44.69 7.69 61.58 0l148-67.5c17.6-8 17.6-21.1 0-29.1l-79.94-38.47" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - <path d="M160 204.48l-82.8 37.16c-17.6 8-17.6 21.1 0 29.1l148 67.49c16.89 7.7 44.69 7.7 61.58 0l148-67.49c17.7-8 17.7-21.1.1-29.1L352 204.48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - </svg>It - </div> - <input class="category_it" type="checkbox"> - </div> - <div> - <div> - <svg class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true"> - <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M32 192L256 64l224 128-224 128L32 192z"></path> - <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M112 240v128l144 80 144-80V240M480 368V192M256 320v128"></path> - </svg>Science - </div> - <input class="category_science" type="checkbox"> - </div> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <path d="M384 80H128c-26 0-43 14-48 40L48 272v112a48.14 48.14 0 0048 48h320a48.14 48.14 0 0048-48V272l-32-152c-5-27-23-40-48-40z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></path> - <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M48 272h144M320 272h144M192 272a64 64 0 00128 0M144 144h224M128 208h256"></path> - </svg>Files - </div> - <input class="category_files" type="checkbox"> - </div> - <div> - <div> - <svg viewBox="0 0 512 512" aria-hidden="true"> - <path d="M402 168c-2.93 40.67-33.1 72-66 72s-63.12-31.32-66-72c-3-42.31 26.37-72 66-72s69 30.46 66 72z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - <path d="M336 304c-65.17 0-127.84 32.37-143.54 95.41-2.08 8.34 3.15 16.59 11.72 16.59h263.65c8.57 0 13.77-8.25 11.72-16.59C463.85 335.36 401.18 304 336 304z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></path> - <path d="M200 185.94c-2.34 32.48-26.72 58.06-53 58.06s-50.7-25.57-53-58.06C91.61 152.15 115.34 128 147 128s55.39 24.77 53 57.94z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path> - <path d="M206 306c-18.05-8.27-37.93-11.45-59-11.45-52 0-102.1 25.85-114.65 76.2-1.65 6.66 2.53 13.25 9.37 13.25H154" fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32"></path> - </svg>Social Media - </div> - <input class="category_social_media" type="checkbox"> - </div> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Search language</h4> - <select class="language"> - <option value="all">Default language</option> - <option value="af-ZA">🇿🇦 Afrikaans (Suid-Afrika) </option> - <option value="ca-ES">🇪🇸 Català (Espanya) </option> - <option value="da-DK">🇩🇰 Dansk (Danmark) </option> - <option value="de">🌐 Deutsch </option> - <option value="de-AT">🇦🇹 Deutsch (Österreich) </option> - <option value="de-CH">🇨🇭 Deutsch (Schweiz) </option> - <option value="de-DE">🇩🇪 Deutsch (Deutschland) </option> - <option value="et-EE">🇪🇪 Eesti (Eesti) </option> - <option value="en">🌐 English </option> - <option value="en-AU">🇦🇺 English (Australia) </option> - <option value="en-CA">🇨🇦 English (Canada) </option> - <option value="en-GB">🇬🇧 English (United Kingdom) </option> - <option value="en-IE">🇮🇪 English (Ireland) </option> - <option value="en-MY">🇲🇾 English (Malaysia) </option> - <option value="en-NZ">🇳🇿 English (New Zealand) </option> - <option value="en-US">🇺🇸 English (United States) </option> - <option value="es">🌐 Español </option> - <option value="es-AR">🇦🇷 Español (Argentina) </option> - <option value="es-CL">🇨🇱 Español (Chile) </option> - <option value="es-ES">🇪🇸 Español (España) </option> - <option value="es-MX">🇲🇽 Español (México) </option> - <option value="fil-PH">🇵🇭 Filipino (Pilipinas) </option> - <option value="fr">🌐 Français </option> - <option value="fr-BE">🇧🇪 Français (Belgique) </option> - <option value="fr-CA">🇨🇦 Français (Canada) </option> - <option value="fr-CH">🇨🇭 Français (Suisse) </option> - <option value="fr-FR">🇫🇷 Français (France) </option> - <option value="hr-HR">🇭🇷 Hrvatski (Hrvatska) </option> - <option value="id-ID">🇮🇩 Indonesia (Indonesia) </option> - <option value="it-IT">🇮🇹 Italiano (Italia) </option> - <option value="sw-TZ">🇹🇿 Kiswahili (Tanzania) </option> - <option value="lv-LV">🇱🇻 Latviešu (Latvija) </option> - <option value="lt-LT">🇱🇹 Lietuvių (Lietuva) </option> - <option value="hu-HU">🇭🇺 Magyar (Magyarország) </option> - <option value="nl">🌐 Nederlands </option> - <option value="nl-BE">🇧🇪 Nederlands (België) </option> - <option value="nl-NL">🇳🇱 Nederlands (Nederland) </option> - <option value="no-NO">🇳🇴 Norsk </option> - <option value="pl-PL">🇵🇱 Polski (Polska) </option> - <option value="pt">🌐 Português </option> - <option value="pt-BR">🇧🇷 Português (Brasil) </option> - <option value="pt-PT">🇵🇹 Português (Portugal) </option> - <option value="ro-RO">🇷🇴 Română (România) </option> - <option value="sk-SK">🇸🇰 Slovenčina (Slovensko) </option> - <option value="sl-SI">🇸🇮 Slovenščina (Slovenija) </option> - <option value="fi-FI">🇫🇮 Suomi (Suomi) </option> - <option value="sv-SE">🇸🇪 Svenska (Sverige) </option> - <option value="vi-VN">🇻🇳 Tiếng Việt (Việt Nam) </option> - <option value="tr-TR">🇹🇷 Türkçe (Türkiye) </option> - <option value="is-IS">🇮🇸 Íslenska (Ísland) </option> - <option value="cs-CZ">🇨🇿 Čeština (Česko) </option> - <option value="el-GR">🇬🇷 Ελληνικά (Ελλάδα) </option> - <option value="be-BY">🇧🇾 Беларуская (Беларусь) </option> - <option value="bg-BG">🇧🇬 Български (България) </option> - <option value="ru-RU">🇷🇺 Русский (Россия) </option> - <option value="sr-RS">🇷🇸 Српски (Србија) </option> - <option value="uk-UA">🇺🇦 Українська (Україна) </option> - <option value="he-IL">🇮🇱 עברית (ישראל) </option> - <option value="ar-EG">🇪🇬 العربية (مصر) </option> - <option value="fa-IR">🇮🇷 فارسی (ایران) </option> - <option value="hi-IN">🇮🇳 हिन्दी (भारत) </option> - <option value="th-TH">🇹🇭 ไทย (ไทย) </option> - <option value="zh">🌐 中文 </option> - <option value="zh-CN">🇨🇳 中文 (中国) </option> - <option value="zh-HK">🇭🇰 中文 (中國香港) </option> - <option value="zh-TW">🇹🇼 中文 (台灣) </option> - <option value="ja-JP">🇯🇵 日本語 (日本) </option> - <option value="ko-KR">🇰🇷 한국어 (대한민국) </option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Autocomplete</h4> - <select class="autocomplete"> - <option value=""> - </option> - <option value="dbpedia">dbpedia</option> - <option value="duckduckgo">duckduckgo</option> - <option value="google">google</option> - <option value="seznam">seznam</option> - <option value="startpage">startpage</option> - <option value="swisscows">swisscows</option> - <option value="qwant">qwant</option> - <option value="wikipedia">wikipedia</option> - <option value="brave">brave</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">SafeSearch</h4> - <select class="safesearch"> - <option value="2">Strict</option> - <option value="1">Moderate</option> - <option value="0">None</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Hostname replace</h4> - <input class="hostname_replace" type="checkbox"> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Open Access DOI rewrite</h4> - <input class="oa_doi_rewrite" type="checkbox"> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Open Access DOI resolver</h4> - <select class="doi_resolver"> - <option value="oadoi.org">oadoi.org - https://oadoi.org/</option> - <option value="doi.org">doi.org - https://doi.org/</option> - <option value="doai.io">doai.io - https://dissem.in/</option> - <option value="sci-hub.se">sci-hub.se - https://sci-hub.se/</option> - <option value="sci-hub.do">sci-hub.do - https://sci-hub.do/</option> - <option value="scihubtw.tw">scihubtw.tw - https://scihubtw.tw/</option> - <option value="sci-hub.st">sci-hub.st - https://sci-hub.st/</option> - <option value="sci-hub.bar">sci-hub.bar - https://sci-hub.bar/</option> - <option value="sci-hub.it.nf">sci-hub.it.nf - https://sci-hub.it.nf/</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Engine tokens</h4> - <input class="tokens" type="text"> - </div> - <hr> - <div class="some-block option-block"> - <h2>User Interface</h2> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Interface language</h4> - <select class="locale"> - <option value="ar">العربية (Arabic)</option> - <option value="bg">Български (Bulgarian)</option> - <option value="bo">བོད་སྐད་ (Tibetan)</option> - <option value="ca">Català (Catalan)</option> - <option value="cs">Čeština (Czech)</option> - <option value="cy">Cymraeg (Welsh)</option> - <option value="da">Dansk (Danish)</option> - <option value="de">Deutsch (German)</option> - <option value="el-GR">Ελληνικά, Ελλάδα (Greek, Greece)</option> - <option value="en" selected="selected">English</option> - <option value="eo">Esperanto</option> - <option value="es">Español (Spanish)</option> - <option value="et">Eesti (Estonian)</option> - <option value="eu">Euskara (Basque)</option> - <option value="fa-IR">فارسی, ایران (Persian, Iran)</option> - <option value="fi">Suomi (Finnish)</option> - <option value="fil">Filipino</option> - <option value="fr">Français (French)</option> - <option value="gl">Galego (Galician)</option> - <option value="he">עברית (Hebrew)</option> - <option value="hr">Hrvatski (Croatian)</option> - <option value="hu">Magyar (Hungarian)</option> - <option value="ia">Interlingua</option> - <option value="id">Indonesia (Indonesian)</option> - <option value="it">Italiano (Italian)</option> - <option value="ja">日本語 (Japanese)</option> - <option value="ko">한국어 (Korean)</option> - <option value="lt">Lietuvių (Lithuanian)</option> - <option value="nb-NO">Norsk bokmål, Norge (Norwegian bokmål, Norway)</option> - <option value="nl">Nederlands (Dutch)</option> - <option value="nl-BE">Vlaams (Dutch, Belgium)</option> - <option value="oc">Occitan</option> - <option value="pl">Polski (Polish)</option> - <option value="pt">Português (Portuguese)</option> - <option value="pt-BR">Português, Brasil (Portuguese, Brazil)</option> - <option value="ro">Română (Romanian)</option> - <option value="ru">Русский (Russian)</option> - <option value="sk">Slovenčina (Slovak)</option> - <option value="sl">Slovenščina (Slovenian)</option> - <option value="sr">Српски (Serbian)</option> - <option value="sv">Svenska (Swedish)</option> - <option value="ta">தமிழ் (Tamil)</option> - <option value="te">తెలుగు (Telugu)</option> - <option value="tr">Türkçe (Turkish)</option> - <option value="uk">Українська (Ukrainian)</option> - <option value="vi">Tiếng việt (Vietnamese)</option> - <option value="zh-Hans-CN">中文, 中国 (Chinese, China)</option> - <option value="zh-Hant-TW">中文, 台灣 (Chinese, Taiwan)</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Theme</h4> - <select class="theme"> - <option value="simple">simple</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Theme style</h4> - <select class="simple_style"> - <option value="auto">auto</option> - <option value="light">light</option> - <option value="dark">dark</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Results on new tabs</h4> - <select class="results_on_new_tab"> - <option value="1">On</option> - <option value="0">Off</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Infinite scroll</h4> - <select class="infinite_scroll"> - <option value="1">On</option> - <option value="0">Off</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Search on category select</h4> - <input class="search_on_category_select" type="checkbox"> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Vim-like hotkeys</h4> - <input class="vim_hotkeys" type="checkbox"> - </div> - <hr> - <div class="some-block option-block"> - <h2>Privacy </h2> - </div> - <div class="some-block option-block"> - <h4 data-localise="">HTTP Method</h4> - <select class="method"> - <option value="POST">POST</option> - <option value="GET">GET</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Image proxy</h4> - <select class="image_proxy"> - <option value="1">Enabled</option> - <option value="0">Disabled</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Query in the page's title</h4> - <select class="query_in_title"> - <option value="1">Enabled</option> - <option value="">Disabled</option> - </select> - </div> - <div class="some-block option-block"> - <h4 data-localise="">Tracker URL remover</h4> - <input class="tracker_url_remover" type="checkbox"> - </div> - <hr> - </div> <div class="normal"> <div class="some-block option-block"> <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4> diff --git a/src/pages/options/search/search.js b/src/pages/options/search/search.js index 0cbb79f7..47f27c0a 100644 --- a/src/pages/options/search/search.js +++ b/src/pages/options/search/search.js @@ -2,116 +2,70 @@ import searchHelper from "../../../assets/javascripts/helpers/search.js"; import commonHelper from "../../../assets/javascripts/helpers/common.js"; let searxDiv = document.getElementById("searx"); - let searxngDiv = document.getElementById("searxng"); -let searxngCustomSettings = document.getElementById("enable-searxng-custom-settings"); - -let searxngCustomSettingsDiv = searxngDiv.getElementsByClassName('custom-settings')[0] - let whoogleDiv = document.getElementById("whoogle"); -let disableSearchElement = document.getElementById("disable-search"); -let searchFrontendElement = document.getElementById("search-frontend"); -let protocolElement = document.getElementById("protocol") - -let customSettingsDivElement = document.getElementsByClassName("custom-settings"); - -let checkboxes_xpath = document.evaluate( - "//div[@id='searxng']//input[@type='checkbox']", - document, null, XPathResult.ANY_TYPE, null, -); -const inputChecked = []; -let checkbox = checkboxes_xpath.iterateNext(); -while (checkbox) { - inputChecked.push(checkbox); - checkbox = checkboxes_xpath.iterateNext(); -} - -let textInputs_xpath = document.evaluate( - "//div[@id='searxng']//input[@type='text']", - document, null, XPathResult.ANY_TYPE, null, -); -const inputValues = []; -let textInput = textInputs_xpath.iterateNext(); -while (textInput) { - inputValues.push(textInput); - textInput = textInputs_xpath.iterateNext(); -} -inputValues.push(...searxngCustomSettingsDiv.getElementsByTagName('select')); +let disable = document.getElementById("disable-search"); +let frontend = document.getElementById("search-frontend"); +let protocol = document.getElementById("protocol") + +const searxngForm = searxngDiv.getElementsByTagName('form')[0]; +const searxngCookies = searxngForm.getElementsByTagName('input')[0]; +searxngForm.addEventListener('submit', async event => { + event.preventDefault(); + const url = new URL(searxngCookies.value); + searchHelper.initSearxngCookies(url); +}); + +const searxForm = searxDiv.getElementsByTagName('form')[0]; +const searxCookies = searxForm.getElementsByTagName('input')[0]; +searxForm.addEventListener('submit', async event => { + event.preventDefault(); + const url = new URL(searxCookies.value); + searchHelper.initSearxCookies(url); +}); browser.storage.local.get( [ "disableSearch", "searchFrontend", "searchProtocol", - "searxngCustomSettings" ], r => { - disableSearchElement.checked = !r.disableSearch; - - searchFrontendElement.value = r.searchFrontend; - changeFrontendsSettings(r.searchFrontend); - - protocolElement.value = r.searchProtocol; - changeProtocolSettings(r.searchProtocol); + disable.checked = !r.disableSearch; + frontend.value = r.searchFrontend; + protocol.value = r.searchProtocol; - - searxngCustomSettings.checked = r.searxngCustomSettings - changeCustomSettings() + changeFrontendsSettings(); + changeProtocolSettings(); } ); -for (const element of inputChecked) { - let k = `searxng_${element.className}` - browser.storage.local.get(k, r => element.checked = r[k]) -} -for (const element of inputValues) { - let k = `searxng_${element.className}` - browser.storage.local.get(k, r => element.value = r[k]) -} - -searxngCustomSettingsDiv.addEventListener("change", async () => { - for (const element of inputChecked) - browser.storage.local.set({ [`searxng_${element.className}`]: element.checked }) - - for (const element of inputValues) - browser.storage.local.set({ [`searxng_${element.className}`]: element.value }); -}) - document.addEventListener("change", async () => { await browser.storage.local.set({ - disableSearch: !disableSearchElement.checked, - searchFrontend: searchFrontendElement.value, - searchProtocol: protocolElement.value, - searxngCustomSettings: searxngCustomSettings.checked, + disableSearch: !disable.checked, + searchFrontend: frontend.value, + searchProtocol: protocol.value, }); - changeFrontendsSettings(searchFrontendElement.value); - changeProtocolSettings(protocolElement.value); - changeCustomSettings(); + changeFrontendsSettings(frontend.value); + changeProtocolSettings(protocol.value); }) -function changeCustomSettings() { - if (searxngCustomSettings.checked) - for (const item of customSettingsDivElement) item.style.display = 'block'; - else - for (const item of customSettingsDivElement) item.style.display = 'none'; -} - -function changeFrontendsSettings(frontend) { +function changeFrontendsSettings() { let SearxWhoogleElement = document.getElementById("searx-whoogle"); - if (frontend == 'searx') { + if (frontend.value == 'searx') { searxDiv.style.display = 'block'; searxngDiv.style.display = 'none'; whoogleDiv.style.display = 'none'; SearxWhoogleElement.style.display = 'block'; } - else if (frontend == 'searxng') { + else if (frontend.value == 'searxng') { searxDiv.style.display = 'none'; searxngDiv.style.display = 'block'; whoogleDiv.style.display = 'none'; SearxWhoogleElement.style.display = 'block'; } - else if (frontend == 'whoogle') { + else if (frontend.value == 'whoogle') { searxDiv.style.display = 'none'; searxngDiv.style.display = 'none'; whoogleDiv.style.display = 'block'; @@ -119,7 +73,7 @@ function changeFrontendsSettings(frontend) { } } -function changeProtocolSettings(protocol) { +function changeProtocolSettings() { let normalsearxDiv = searxDiv.getElementsByClassName("normal")[0]; let torsearxDiv = searxDiv.getElementsByClassName("tor")[0]; let i2psearxDiv = searxDiv.getElementsByClassName("i2p")[0]; @@ -132,35 +86,41 @@ function changeProtocolSettings(protocol) { let torwhoogleDiv = whoogleDiv.getElementsByClassName("tor")[0]; let i2pwhoogleDiv = whoogleDiv.getElementsByClassName("i2p")[0]; - if (protocol == 'normal') { + if (protocol.value == 'normal') { normalsearxDiv.style.display = 'block'; normalsearxngDiv.style.display = 'block'; normalwhoogleDiv.style.display = 'block'; + torsearxDiv.style.display = 'none'; torsearxngDiv.style.display = 'none'; torwhoogleDiv.style.display = 'none'; + i2psearxDiv.style.display = 'none'; i2psearxngDiv.style.display = 'none'; i2pwhoogleDiv.style.display = 'none'; } - else if (protocol == 'tor') { + else if (protocol.value == 'tor') { normalsearxDiv.style.display = 'none'; normalsearxngDiv.style.display = 'none'; normalwhoogleDiv.style.display = 'none'; + torsearxDiv.style.display = 'block'; torsearxngDiv.style.display = 'block'; torwhoogleDiv.style.display = 'block'; + i2psearxDiv.style.display = 'none'; i2psearxngDiv.style.display = 'none'; i2pwhoogleDiv.style.display = 'none'; } - else if (protocol == 'i2p') { + else if (protocol.value == 'i2p') { normalsearxDiv.style.display = 'none'; normalsearxngDiv.style.display = 'none'; normalwhoogleDiv.style.display = 'none'; + torsearxDiv.style.display = 'none'; torsearxngDiv.style.display = 'none'; torwhoogleDiv.style.display = 'none'; + i2psearxDiv.style.display = 'block'; i2psearxngDiv.style.display = 'block'; i2pwhoogleDiv.style.display = 'block'; @@ -232,9 +192,4 @@ latencyWhoogleElement.addEventListener("click", latencyWhoogleElement.removeEventListener("click", reloadWindow); }); } -); - -window.onblur = () => { - searchHelper.initSearxCookies(); - searchHelper.initSearxngCookies(); -} \ No newline at end of file +); \ No newline at end of file diff --git a/src/pages/options/search/search.pug b/src/pages/options/search/search.pug index 78825611..3bdc6d7e 100644 --- a/src/pages/options/search/search.pug +++ b/src/pages/options/search/search.pug @@ -46,340 +46,7 @@ body.option(dir="auto") +instances('https://searx.i2p') #searxng - .some-block.option-block - h4(data-localise="__MSG_enableCustomSettings__") Enable Custom Settings (will use cookies) - input#enable-searxng-custom-settings(type="checkbox") hr - .custom-settings - .some-block.option-block - h2 General - - .some-block.option-block - h4(data-localise="") Default categories - - .checklist-popup - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - path(d="M221.09 64a157.09 157.09 0 10157.09 157.09A157.1 157.1 0 00221.09 64z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32") - path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32" d="M338.29 338.29L448 448") - |General - input.category_general(type="checkbox") - - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - rect(x="48" y="80" width="416" height="352" rx="48" ry="48" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32") - circle(cx="336" cy="176" r="32" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32") - path(d="M304 335.79l-90.66-90.49a32 32 0 00-43.87-1.3L48 352M224 432l123.34-123.34a32 32 0 0143.11-2L464 368" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - |Images - - input.category_images(type="checkbox") - - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - path(d="M112 111v290c0 17.44 17 28.52 31 20.16l247.9-148.37c12.12-7.25 12.12-26.33 0-33.58L143 90.84c-14-8.36-31 2.72-31 20.16z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32") - |Videos - input.category_videos(type="checkbox") - - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - path(d="M368 415.86V72a24.07 24.07 0 00-24-24H72a24.07 24.07 0 00-24 24v352a40.12 40.12 0 0040 40h328" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32") - path(d="M416 464h0a48 48 0 01-48-48V128h72a24 24 0 0124 24v264a48 48 0 01-48 48z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32") - path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M240 128h64M240 192h64M112 256h192M112 320h192M112 384h192") - path(d="M176 208h-64a16 16 0 01-16-16v-64a16 16 0 0116-16h64a16 16 0 0116 16v64a16 16 0 01-16 16z") - |News - input.category_news(type="checkbox") - - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - path(d="M256 48c-79.5 0-144 61.39-144 137 0 87 96 224.87 131.25 272.49a15.77 15.77 0 0025.5 0C304 409.89 400 272.07 400 185c0-75.61-64.5-137-144-137z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - circle(cx="256" cy="192" r="48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - |Maps - input.category_map(type="checkbox") - - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - path(d="M192 218v-6c0-14.84 10-27 24.24-30.59l174.59-46.68A20 20 0 01416 154v22" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - path(d="M416 295.94v80c0 13.91-8.93 25.59-22 30l-22 8c-25.9 8.72-52-10.42-52-38h0a33.37 33.37 0 0123-32l51-18.15c13.07-4.4 22-15.94 22-29.85V58a10 10 0 00-12.6-9.61L204 102a16.48 16.48 0 00-12 16v226c0 13.91-8.93 25.6-22 30l-52 18c-13.88 4.68-22 17.22-22 32h0c0 27.58 26.52 46.55 52 38l22-8c13.07-4.4 22-16.08 22-30v-80" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - |Music - input.category_music(type="checkbox") - - div - div - svg(class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true") - path(d="M434.8 137.65l-149.36-68.1c-16.19-7.4-42.69-7.4-58.88 0L77.3 137.65c-17.6 8-17.6 21.09 0 29.09l148 67.5c16.89 7.7 44.69 7.7 61.58 0l148-67.5c17.52-8 17.52-21.1-.08-29.09zM160 308.52l-82.7 37.11c-17.6 8-17.6 21.1 0 29.1l148 67.5c16.89 7.69 44.69 7.69 61.58 0l148-67.5c17.6-8 17.6-21.1 0-29.1l-79.94-38.47" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - path(d="M160 204.48l-82.8 37.16c-17.6 8-17.6 21.1 0 29.1l148 67.49c16.89 7.7 44.69 7.7 61.58 0l148-67.49c17.7-8 17.7-21.1.1-29.1L352 204.48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - |It - input.category_it(type="checkbox") - - div - div - svg(class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true") - path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M32 192L256 64l224 128-224 128L32 192z") - path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M112 240v128l144 80 144-80V240M480 368V192M256 320v128") - |Science - input.category_science(type="checkbox") - - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - path(d="M384 80H128c-26 0-43 14-48 40L48 272v112a48.14 48.14 0 0048 48h320a48.14 48.14 0 0048-48V272l-32-152c-5-27-23-40-48-40z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32") - path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M48 272h144M320 272h144M192 272a64 64 0 00128 0M144 144h224M128 208h256") - |Files - input.category_files(type="checkbox") - - div - div - svg(viewBox="0 0 512 512" aria-hidden="true") - path(d="M402 168c-2.93 40.67-33.1 72-66 72s-63.12-31.32-66-72c-3-42.31 26.37-72 66-72s69 30.46 66 72z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - path(d="M336 304c-65.17 0-127.84 32.37-143.54 95.41-2.08 8.34 3.15 16.59 11.72 16.59h263.65c8.57 0 13.77-8.25 11.72-16.59C463.85 335.36 401.18 304 336 304z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32") - path(d="M200 185.94c-2.34 32.48-26.72 58.06-53 58.06s-50.7-25.57-53-58.06C91.61 152.15 115.34 128 147 128s55.39 24.77 53 57.94z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32") - path(d="M206 306c-18.05-8.27-37.93-11.45-59-11.45-52 0-102.1 25.85-114.65 76.2-1.65 6.66 2.53 13.25 9.37 13.25H154" fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32") - |Social Media - input.category_social_media(type="checkbox") - - .some-block.option-block - h4(data-localise="") Search language - select.language - option(value="all") Default language - option(value="af-ZA") 🇿🇦 Afrikaans (Suid-Afrika) - option(value="ca-ES") 🇪🇸 Català (Espanya) - option(value="da-DK") 🇩🇰 Dansk (Danmark) - option(value="de") 🌐 Deutsch - option(value="de-AT") 🇦🇹 Deutsch (Österreich) - option(value="de-CH") 🇨🇭 Deutsch (Schweiz) - option(value="de-DE") 🇩🇪 Deutsch (Deutschland) - option(value="et-EE") 🇪🇪 Eesti (Eesti) - option(value="en") 🌐 English - option(value="en-AU") 🇦🇺 English (Australia) - option(value="en-CA") 🇨🇦 English (Canada) - option(value="en-GB") 🇬🇧 English (United Kingdom) - option(value="en-IE") 🇮🇪 English (Ireland) - option(value="en-MY") 🇲🇾 English (Malaysia) - option(value="en-NZ") 🇳🇿 English (New Zealand) - option(value="en-US") 🇺🇸 English (United States) - option(value="es") 🌐 Español - option(value="es-AR") 🇦🇷 Español (Argentina) - option(value="es-CL") 🇨🇱 Español (Chile) - option(value="es-ES") 🇪🇸 Español (España) - option(value="es-MX") 🇲🇽 Español (México) - option(value="fil-PH") 🇵🇭 Filipino (Pilipinas) - option(value="fr") 🌐 Français - option(value="fr-BE") 🇧🇪 Français (Belgique) - option(value="fr-CA") 🇨🇦 Français (Canada) - option(value="fr-CH") 🇨🇭 Français (Suisse) - option(value="fr-FR") 🇫🇷 Français (France) - option(value="hr-HR") 🇭🇷 Hrvatski (Hrvatska) - option(value="id-ID") 🇮🇩 Indonesia (Indonesia) - option(value="it-IT") 🇮🇹 Italiano (Italia) - option(value="sw-TZ") 🇹🇿 Kiswahili (Tanzania) - option(value="lv-LV") 🇱🇻 Latviešu (Latvija) - option(value="lt-LT") 🇱🇹 Lietuvių (Lietuva) - option(value="hu-HU") 🇭🇺 Magyar (Magyarország) - option(value="nl") 🌐 Nederlands - option(value="nl-BE") 🇧🇪 Nederlands (België) - option(value="nl-NL") 🇳🇱 Nederlands (Nederland) - option(value="no-NO") 🇳🇴 Norsk - option(value="pl-PL") 🇵🇱 Polski (Polska) - option(value="pt") 🌐 Português - option(value="pt-BR") 🇧🇷 Português (Brasil) - option(value="pt-PT") 🇵🇹 Português (Portugal) - option(value="ro-RO") 🇷🇴 Română (România) - option(value="sk-SK") 🇸🇰 Slovenčina (Slovensko) - option(value="sl-SI") 🇸🇮 Slovenščina (Slovenija) - option(value="fi-FI") 🇫🇮 Suomi (Suomi) - option(value="sv-SE") 🇸🇪 Svenska (Sverige) - option(value="vi-VN") 🇻🇳 Tiếng Việt (Việt Nam) - option(value="tr-TR") 🇹🇷 Türkçe (Türkiye) - option(value="is-IS") 🇮🇸 Íslenska (Ísland) - option(value="cs-CZ") 🇨🇿 Čeština (Česko) - option(value="el-GR") 🇬🇷 Ελληνικά (Ελλάδα) - option(value="be-BY") 🇧🇾 Беларуская (Беларусь) - option(value="bg-BG") 🇧🇬 Български (България) - option(value="ru-RU") 🇷🇺 Русский (Россия) - option(value="sr-RS") 🇷🇸 Српски (Србија) - option(value="uk-UA") 🇺🇦 Українська (Україна) - option(value="he-IL") 🇮🇱 עברית (ישראל) - option(value="ar-EG") 🇪🇬 العربية (مصر) - option(value="fa-IR") 🇮🇷 فارسی (ایران) - option(value="hi-IN") 🇮🇳 हिन्दी (भारत) - option(value="th-TH") 🇹🇭 ไทย (ไทย) - option(value="zh") 🌐 中文 - option(value="zh-CN") 🇨🇳 中文 (中国) - option(value="zh-HK") 🇭🇰 中文 (中國香港) - option(value="zh-TW") 🇹🇼 中文 (台灣) - option(value="ja-JP") 🇯🇵 日本語 (日本) - option(value="ko-KR") 🇰🇷 한국어 (대한민국) - - .some-block.option-block - h4(data-localise="") Autocomplete - select.autocomplete - option(value="") - - option(value="dbpedia") dbpedia - option(value="duckduckgo") duckduckgo - option(value="google") google - option(value="seznam") seznam - option(value="startpage") startpage - option(value="swisscows") swisscows - option(value="qwant") qwant - option(value="wikipedia") wikipedia - option(value="brave") brave - - .some-block.option-block - h4(data-localise="") SafeSearch - select.safesearch - option(value="2") Strict - option(value="1") Moderate - option(value="0") None - - .some-block.option-block - h4(data-localise="") Hostname replace - input.hostname_replace(type="checkbox") - - .some-block.option-block - h4(data-localise="") Open Access DOI rewrite - input.oa_doi_rewrite(type="checkbox") - - .some-block.option-block - h4(data-localise="") Open Access DOI resolver - select.doi_resolver - option(value="oadoi.org") oadoi.org - https://oadoi.org/ - option(value="doi.org") doi.org - https://doi.org/ - option(value="doai.io") doai.io - https://dissem.in/ - option(value="sci-hub.se") sci-hub.se - https://sci-hub.se/ - option(value="sci-hub.do") sci-hub.do - https://sci-hub.do/ - option(value="scihubtw.tw") scihubtw.tw - https://scihubtw.tw/ - option(value="sci-hub.st") sci-hub.st - https://sci-hub.st/ - option(value="sci-hub.bar") sci-hub.bar - https://sci-hub.bar/ - option(value="sci-hub.it.nf") sci-hub.it.nf - https://sci-hub.it.nf/ - - .some-block.option-block - h4(data-localise="") Engine tokens - input.tokens(type="text") - - hr - - .some-block.option-block - h2 User Interface - - .some-block.option-block - h4(data-localise="") Interface language - select.locale - option(value="ar") العربية (Arabic) - option(value="bg") Български (Bulgarian) - option(value="bo") བོད་སྐད་ (Tibetan) - option(value="ca") Català (Catalan) - option(value="cs") Čeština (Czech) - option(value="cy") Cymraeg (Welsh) - option(value="da") Dansk (Danish) - option(value="de") Deutsch (German) - option(value="el-GR") Ελληνικά, Ελλάδα (Greek, Greece) - option(value="en" selected="selected") English - option(value="eo") Esperanto - option(value="es") Español (Spanish) - option(value="et") Eesti (Estonian) - option(value="eu") Euskara (Basque) - option(value="fa-IR") فارسی, ایران (Persian, Iran) - option(value="fi") Suomi (Finnish) - option(value="fil") Filipino - option(value="fr") Français (French) - option(value="gl") Galego (Galician) - option(value="he") עברית (Hebrew) - option(value="hr") Hrvatski (Croatian) - option(value="hu") Magyar (Hungarian) - option(value="ia") Interlingua - option(value="id") Indonesia (Indonesian) - option(value="it") Italiano (Italian) - option(value="ja") 日本語 (Japanese) - option(value="ko") 한국어 (Korean) - option(value="lt") Lietuvių (Lithuanian) - option(value="nb-NO") Norsk bokmål, Norge (Norwegian bokmål, Norway) - option(value="nl") Nederlands (Dutch) - option(value="nl-BE") Vlaams (Dutch, Belgium) - option(value="oc") Occitan - option(value="pl") Polski (Polish) - option(value="pt") Português (Portuguese) - option(value="pt-BR") Português, Brasil (Portuguese, Brazil) - option(value="ro") Română (Romanian) - option(value="ru") Русский (Russian) - option(value="sk") Slovenčina (Slovak) - option(value="sl") Slovenščina (Slovenian) - option(value="sr") Српски (Serbian) - option(value="sv") Svenska (Swedish) - option(value="ta") தமிழ் (Tamil) - option(value="te") తెలుగు (Telugu) - option(value="tr") Türkçe (Turkish) - option(value="uk") Українська (Ukrainian) - option(value="vi") Tiếng việt (Vietnamese) - option(value="zh-Hans-CN") 中文, 中国 (Chinese, China) - option(value="zh-Hant-TW") 中文, 台灣 (Chinese, Taiwan) - - .some-block.option-block - h4(data-localise="") Theme - select.theme - option(value="simple") simple - - .some-block.option-block - h4(data-localise="") Theme style - select.simple_style - option(value="auto") auto - option(value="light") light - option(value="dark") dark - - .some-block.option-block - h4(data-localise="") Results on new tabs - select.results_on_new_tab - option(value="1") On - option(value="0") Off - - .some-block.option-block - h4(data-localise="") Infinite scroll - select.infinite_scroll - option(value="1") On - option(value="0") Off - - .some-block.option-block - h4(data-localise="") Search on category select - input.search_on_category_select(type="checkbox") - - .some-block.option-block - h4(data-localise="") Vim-like hotkeys - input.vim_hotkeys(type="checkbox") - - hr - - .some-block.option-block - h2 Privacy - - .some-block.option-block - h4(data-localise="") HTTP Method - select.method - option(value="POST") POST - option(value="GET") GET - - .some-block.option-block - h4(data-localise="") Image proxy - select.image_proxy - option(value="1") Enabled - option(value="0") Disabled - - .some-block.option-block - h4(data-localise="") Query in the page's title - select.query_in_title - option(value="1") Enabled - option(value="") Disabled - - .some-block.option-block - h4(data-localise="") Tracker URL remover - input.tracker_url_remover(type="checkbox") - - hr - .normal include ../../widgets/instances.pug +instances('https://searxng.com') |