mirror of
https://github.com/PR0M3TH3AN/VoxVera.git
synced 2026-10-27 09:40:40 +00:00
fix: Restore data-i18n attributes to re-enable language selector while preserving zero-JS support
This commit is contained in:
1 parent
1783d55973
commit
b4d8852c3e
4 files changed
+89
-84
No files matched your search
Binary file not shown.
+38
-45
@@ -331,10 +331,10 @@
|
||||
<div class="left-tear-offs">
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -343,10 +343,10 @@
|
||||
<!-- Repeat for other tear-offs -->
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -354,10 +354,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -365,10 +365,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -376,10 +376,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -387,10 +387,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -398,10 +398,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -409,10 +409,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -420,10 +420,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -431,10 +431,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>Use Tor Browser</span><br><br>
|
||||
<span>to help spread this message go to</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">Use Tor Browser</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">to help spread this message go to</span><br>
|
||||
<a class="tear-off-link" href="https://voxvera.org/" target="_blank">https://voxvera.org/</a><br>
|
||||
<span>click the button below to print</span>
|
||||
<span data-i18n="web.tear_off_footer">click the button below to print</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -442,22 +442,15 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h1 id="top-secret-title">TOP SECRET</h1>
|
||||
<div class="distribute" id="do-not-distribute">DO <span class="redacted">NOT</span> DISTRIBUTE</div>
|
||||
<h1 id="operation-title-2">OPERATION VOX VERA</h1>
|
||||
<h1 id="top-secret-title" data-i18n="landing.title">{{t_landing_title}}</h1>
|
||||
<div class="distribute" id="do-not-distribute" data-i18n="landing.subtitle">{{t_landing_subtitle}}</div>
|
||||
<h1 id="operation-title-2" data-i18n="landing.headline">{{t_landing_headline}}</h1>
|
||||
<hr>
|
||||
<div class="message">
|
||||
<div class="text-container" id="main-content" contenteditable="false">Break free from censorship with VoxVera. An anonymous guerrilla marketing and message-spreading tool. Whether online or in the physical world, it can empower you to spread your ideas boldly, shielded by complete anonymity (if you host over Tor). Download the code, design a flyer site, host it online and amplify your message.
|
||||
|
||||
Use memetic power to share your ideas in your school, workplace, online communities, or even globally. VoxVera ensures your message resonates far and wide, with tear-off sections featuring unique URLs and QR codes for easy reprinting.
|
||||
|
||||
Privacy can be maintained. Flyers can be shared via the Tor network, protecting hoster and users from censorship.
|
||||
|
||||
Join us in a revolution that values truth and transparency. Together, we can build a network of informed citizens who are unafraid to speak out.
|
||||
</div>
|
||||
<div class="text-container" id="main-content" contenteditable="false" data-i18n="landing.content">{{t_landing_content}}</div>
|
||||
<div class="qr-code-body">
|
||||
<div class="qr-code-url">
|
||||
<span class="url-message">Get VoxVera and start spreading your message.</span><br><br>
|
||||
<span class="url-message" data-i18n="landing.url_message">{{t_landing_url_message}}</span><br><br>
|
||||
<a id="qr-link-2" href="https://github.com/PR0M3TH3AN/VoxVera" target="_blank">https://github.com/PR0M3TH3AN/VoxVera</a>
|
||||
</div>
|
||||
<img src="qrcode-content.png" alt="QR Code">
|
||||
@@ -465,14 +458,14 @@ Join us in a revolution that values truth and transparency. Together, we can bui
|
||||
</div>
|
||||
<hr>
|
||||
<div class="footer">
|
||||
<p class="credit"><span>built with</span> <a href="https://github.com/PR0M3TH3AN/VoxVera">voxvera</a></p>
|
||||
<p class="credit"><span data-i18n="web.built_with">built with</span> <a href="https://github.com/PR0M3TH3AN/VoxVera">voxvera</a></p>
|
||||
<p class="binary" id="binary-message">0110010 0101011 0110010 0111101 0110100</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="button-bar">
|
||||
<button class="print-button" onclick="window.print()">Print this page</button>
|
||||
<a class="download-button" href="download/voxvera-portable.zip" download>Download Tool & Source</a>
|
||||
<button class="print-button" onclick="window.print()" data-i18n="web.print_button">Print this page</button>
|
||||
<a class="download-button" href="download/voxvera-portable.zip" download data-i18n="web.download_button">Download Tool & Source</a>
|
||||
<select class="lang-select" id="lang-selector" onchange="setLanguage(this.value)"></select>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
+13
-1
@@ -363,10 +363,22 @@ def build_assets(
|
||||
# 1. Statically replace localization tokens {{t_web_...}}
|
||||
# This ensures the flyer is translated even with JS disabled.
|
||||
lang_data = all_locales.get(data.get("lang", "en"), all_locales.get("en", {}))
|
||||
|
||||
# Web tokens (labels, buttons)
|
||||
web_tokens = lang_data.get("web", {})
|
||||
for token, translation in web_tokens.items():
|
||||
html = html.replace(f"{{{{t_web_{token}}}}}", str(translation))
|
||||
|
||||
# Landing tokens (should be cleared for regular flyers)
|
||||
landing_tokens = lang_data.get("landing", {})
|
||||
for token in landing_tokens.keys():
|
||||
html = html.replace(f"{{{{t_landing_{token}}}}}", "")
|
||||
|
||||
# Explicitly handle content and url_message if they were t_landing'd
|
||||
# We want the user's custom content to win
|
||||
html = html.replace("{{t_landing_content}}", "{{content}}")
|
||||
html = html.replace("{{t_landing_url_message}}", "{{url_message}}")
|
||||
|
||||
# 2. Statically replace config placeholders {{key}}
|
||||
for key, value in data.items():
|
||||
html = html.replace(f"{{{{{key}}}}}", str(value))
|
||||
@@ -753,7 +765,7 @@ def build_site():
|
||||
# 2. Update relative path for download
|
||||
html = html.replace("download/download.zip", "download/voxvera-portable.zip")
|
||||
|
||||
# 3. Inject site-specific config data
|
||||
# 3. Inject site-specific config data (handles any remaining {{key}} placeholders)
|
||||
for key, value in data.items():
|
||||
html = html.replace(f"{{{{{key}}}}}", str(value))
|
||||
|
||||
|
||||
@@ -331,10 +331,10 @@
|
||||
<div class="left-tear-offs">
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -343,10 +343,10 @@
|
||||
<!-- Repeat for other tear-offs -->
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -354,10 +354,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -365,10 +365,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -376,10 +376,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -387,10 +387,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -398,10 +398,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -409,10 +409,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -420,10 +420,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -431,10 +431,10 @@
|
||||
</div>
|
||||
<div class="tear-off">
|
||||
<div class="tear-off-text">
|
||||
<span>{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span>{{t_web_tear_off_desc}}</span><br>
|
||||
<span data-i18n="web.tear_off_tor_browser">{{t_web_tear_off_tor_browser}}</span><br><br>
|
||||
<span data-i18n="web.tear_off_desc">{{t_web_tear_off_desc}}</span><br>
|
||||
<a class="tear-off-link" href="{{tear_off_link}}" target="_blank">{{tear_off_link}}</a><br>
|
||||
<span>{{t_web_tear_off_footer}}</span>
|
||||
<span data-i18n="web.tear_off_footer">{{t_web_tear_off_footer}}</span>
|
||||
</div>
|
||||
<div class="qr-code">
|
||||
<img src="qrcode-tear-offs.png" alt="QR Code">
|
||||
@@ -442,15 +442,15 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h1 id="top-secret-title">{{title}}</h1>
|
||||
<div class="distribute" id="do-not-distribute">{{subtitle}}</div>
|
||||
<h1 id="operation-title-2">{{headline}}</h1>
|
||||
<h1 id="top-secret-title" data-i18n="landing.title">{{t_landing_title}}</h1>
|
||||
<div class="distribute" id="do-not-distribute" data-i18n="landing.subtitle">{{t_landing_subtitle}}</div>
|
||||
<h1 id="operation-title-2" data-i18n="landing.headline">{{t_landing_headline}}</h1>
|
||||
<hr>
|
||||
<div class="message">
|
||||
<div class="text-container" id="main-content" contenteditable="false">{{content}}</div>
|
||||
<div class="text-container" id="main-content" contenteditable="false" data-i18n="landing.content">{{t_landing_content}}</div>
|
||||
<div class="qr-code-body">
|
||||
<div class="qr-code-url">
|
||||
<span class="url-message">{{url_message}}</span><br><br>
|
||||
<span class="url-message" data-i18n="landing.url_message">{{t_landing_url_message}}</span><br><br>
|
||||
<a id="qr-link-2" href="{{url}}" target="_blank">{{url}}</a>
|
||||
</div>
|
||||
<img src="qrcode-content.png" alt="QR Code">
|
||||
@@ -458,14 +458,14 @@
|
||||
</div>
|
||||
<hr>
|
||||
<div class="footer">
|
||||
<p class="credit"><span>{{t_web_built_with}}</span> <a href="https://github.com/PR0M3TH3AN/VoxVera">voxvera</a></p>
|
||||
<p class="credit"><span data-i18n="web.built_with">{{t_web_built_with}}</span> <a href="https://github.com/PR0M3TH3AN/VoxVera">voxvera</a></p>
|
||||
<p class="binary" id="binary-message">{{binary_message}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="button-bar">
|
||||
<button class="print-button" onclick="window.print()">{{t_web_print_button}}</button>
|
||||
<a class="download-button" href="download/download.zip" download>{{t_web_download_button}}</a>
|
||||
<button class="print-button" onclick="window.print()" data-i18n="web.print_button">{{t_web_print_button}}</button>
|
||||
<a class="download-button" href="download/download.zip" download data-i18n="web.download_button">{{t_web_download_button}}</a>
|
||||
<select class="lang-select" id="lang-selector" onchange="setLanguage(this.value)"></select>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
Reference in new issue
Block a user