feat(showcase): add temporary language switcher for visitors with cookie persistence
This commit is contained in:
@@ -2,6 +2,16 @@
|
||||
{% block title %}{{ profile_user.username }} {{ 'showcase.title'|t(lang) }}{% endblock %}
|
||||
{% block nav %}{% endblock %}
|
||||
{% block content %}
|
||||
<div class="showcase-lang-bar">
|
||||
<div class="lang-switcher" id="langSwitcher">
|
||||
<button type="button" class="lang-globe" onclick="document.getElementById('langDropdown').classList.toggle('show')">🌐</button>
|
||||
<div class="lang-dropdown" id="langDropdown">
|
||||
{% for code, name in available_languages.items() %}
|
||||
<a href="?lang={{ code }}" class="lang-option {% if lang == code %}active{% endif %}">{{ name }}</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section-header">
|
||||
<h1>📮 {{ profile_user.username }} {{ 'showcase.title'|t(lang) }}</h1>
|
||||
</div>
|
||||
@@ -184,5 +194,13 @@ document.addEventListener('keydown', function(e) {
|
||||
else if (e.key === 'ArrowLeft') navLightbox(-1);
|
||||
else if (e.key === 'ArrowRight') navLightbox(1);
|
||||
});
|
||||
// Close language dropdown when clicking outside
|
||||
document.addEventListener('click', function(e) {
|
||||
var sw = document.getElementById('langSwitcher');
|
||||
var dd = document.getElementById('langDropdown');
|
||||
if (sw && dd && !sw.contains(e.target)) {
|
||||
dd.classList.remove('show');
|
||||
}
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user