|
20 | 20 | popped = 'state' in window.history; |
21 | 21 | initialURL = location.href; |
22 | 22 |
|
| 23 | +const baseURLPrefix = (() => { |
| 24 | + const scripts = document.getElementsByTagName('script'); |
| 25 | + const index = scripts.length - 1; |
| 26 | + const thisScript = scripts[index]; |
| 27 | + return thisScript.src.replace(/^.*:\/\/[^/]*(.*\/)js\/[^/]+.js(\?.*)?$/, '$1'); |
| 28 | +})(); |
| 29 | + |
23 | 30 | $(document).ready(function() { |
24 | 31 | BrowserFallbacks.init(); |
25 | 32 | Search.init(); |
@@ -49,27 +56,27 @@ var DownloadBox = { |
49 | 56 | var os = window.session.browser.os; // Mac, Win, Linux |
50 | 57 | if(os == "Mac") { |
51 | 58 | $(".monitor").addClass("mac"); |
52 | | - $("#download-link").text("Download for Mac").attr("href", "/download/mac"); |
| 59 | + $("#download-link").text("Download for Mac").attr("href", `${baseURLPrefix}download/mac`); |
53 | 60 | $("#gui-link").removeClass('mac').addClass('gui'); |
54 | | - $("#gui-link").text("Mac GUIs").attr("href", "/download/gui/mac"); |
| 61 | + $("#gui-link").text("Mac GUIs").attr("href", `${baseURLPrefix}download/gui/mac`); |
55 | 62 | $("#gui-os-filter").attr('data-os', 'mac'); |
56 | 63 | $("#gui-os-filter").text("Only show GUIs for my OS (Mac)") |
57 | 64 | } else if (os == "Windows") { |
58 | 65 | $(".monitor").addClass("windows"); |
59 | | - $("#download-link").text("Download for Windows").attr("href", "/download/win"); |
| 66 | + $("#download-link").text("Download for Windows").attr("href", `${baseURLPrefix}download/win`); |
60 | 67 | $("#gui-link").removeClass('mac').addClass('gui'); |
61 | | - $("#gui-link").text("Windows GUIs").attr("href", "/download/gui/windows"); |
| 68 | + $("#gui-link").text("Windows GUIs").attr("href", `${baseURLPrefix}download/gui/windows`); |
62 | 69 | $("#alt-link").removeClass("windows").addClass("mac"); |
63 | | - $("#alt-link").text("Mac Build").attr("href", "/download/mac"); |
| 70 | + $("#alt-link").text("Mac Build").attr("href", `${baseURLPrefix}download/mac`); |
64 | 71 | $("#gui-os-filter").attr('data-os', 'windows'); |
65 | 72 | $("#gui-os-filter").text("Only show GUIs for my OS (Windows)") |
66 | 73 | } else if (os == "Linux") { |
67 | 74 | $(".monitor").addClass("linux"); |
68 | | - $("#download-link").text("Download for Linux").attr("href", "/download/linux"); |
| 75 | + $("#download-link").text("Download for Linux").attr("href", `${baseURLPrefix}download/linux`); |
69 | 76 | $("#gui-link").removeClass('mac').addClass('gui'); |
70 | | - $("#gui-link").text("Linux GUIs").attr("href", "/download/gui/linux"); |
| 77 | + $("#gui-link").text("Linux GUIs").attr("href", `${baseURLPrefix}download/gui/linux`); |
71 | 78 | $("#alt-link").removeClass("windows").addClass("mac"); |
72 | | - $("#alt-link").text("Mac Build").attr("href", "/download/mac"); |
| 79 | + $("#alt-link").text("Mac Build").attr("href", `${baseURLPrefix}download/mac`); |
73 | 80 | $("#gui-os-filter").attr('data-os', 'linux'); |
74 | 81 | $("#gui-os-filter").text("Only show GUIs for my OS (Linux)") |
75 | 82 | } else { |
@@ -257,7 +264,7 @@ var Search = { |
257 | 264 | if(!url) { |
258 | 265 | const term = $('#search-text').val(); |
259 | 266 | const language = document.querySelector("html")?.getAttribute("lang"); |
260 | | - url = `search/results?search=${term}${language && `&language=${language}`}`; |
| 267 | + url = `${baseURLPrefix}search/results?search=${term}${language && `&language=${language}`}`; |
261 | 268 | } |
262 | 269 | window.location.href = url; |
263 | 270 | selectedIndex = 0; |
@@ -417,8 +424,8 @@ var Downloads = { |
417 | 424 |
|
418 | 425 | if (window.history && window.history.pushState) { |
419 | 426 | var url = os === '' |
420 | | - ? '/downloads/guis/' |
421 | | - : `/download/guis?os=${os}`; |
| 427 | + ? `${baseURLPrefix}downloads/guis` |
| 428 | + : `${baseURLPrefix}download/guis?os=${os}`; |
422 | 429 | try { |
423 | 430 | history.pushState(null, $(this).html(), url); |
424 | 431 | } catch (e) { |
|
0 commit comments