fix(i18n): resolve language selector display issues with cache-busting

Language Selector Issues Resolved:
- Add cache-busting version (v0.1.0.1760643941) to i18n-simple.js
- Add cache-busting version to language-selector.js on all pages
- Previously: Scripts cached without versions, causing stale JS to load
- Now: Browser forced to reload latest language selector code

Pages Updated with Cache-Busting:
- index.html: Added ?v= to both i18n scripts
- about.html: Added ?v= to both i18n scripts
- researcher.html: Added ?v= to both i18n scripts
- leader.html: Added ?v= to both i18n scripts
- implementer.html: Added ?v= to both i18n scripts
- faq.html: Added ?v= to both i18n scripts
- docs.html: Added missing i18n scripts + cache-busting

Root Cause Analysis:
- navbar.js had cache-busting (?v=0.1.0.1760254958072)
- i18n scripts had NO cache-busting
- Browsers served cached old versions of language-selector.js
- Language selector container created by navbar, but old selector code failed

Technical Details:
- Desktop language selector: Already correctly shows dropdown only (hidden md:block)
- Mobile language selector: Already correctly shows icons only (flex md:hidden)
- No code changes needed - cache was the issue
- Script loading order: navbar.js → i18n-simple.js → language-selector.js

Deployment:
- All 7 HTML pages deployed to production
- Language selector now appears on all pages including index.html
- Cache invalidation forces browser to fetch new JavaScript

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
TheFlow 2025-10-17 08:47:15 +13:00
parent e4350cdcc7
commit dd601857a1
7 changed files with 16 additions and 12 deletions

View file

@ -281,8 +281,8 @@
</footer>
<!-- Internationalization -->
<script src="/js/i18n-simple.js"></script>
<script src="/js/components/language-selector.js"></script>
<script src="/js/i18n-simple.js?v=0.1.0.1760643941"></script>
<script src="/js/components/language-selector.js?v=0.1.0.1760643941"></script>
</body>
</html>

View file

@ -815,5 +815,9 @@
<script src="/js/docs-app.js?v=0.1.0.1760254958072"></script>
<script src="/js/docs-search-enhanced.js?v=0.1.0.1760254958072"></script>
<!-- Internationalization -->
<script src="/js/i18n-simple.js?v=0.1.0.1760643941"></script>
<script src="/js/components/language-selector.js?v=0.1.0.1760643941"></script>
</body>
</html>

View file

@ -679,8 +679,8 @@
</div>
<!-- Internationalization -->
<script src="/js/i18n-simple.js"></script>
<script src="/js/components/language-selector.js"></script>
<script src="/js/i18n-simple.js?v=0.1.0.1760643941"></script>
<script src="/js/components/language-selector.js?v=0.1.0.1760643941"></script>
<!-- Version Management & PWA -->
<script src="/js/version-manager.js"></script>

View file

@ -779,8 +779,8 @@ if (pressure.level === 'CRITICAL') {
</footer>
<!-- Internationalization -->
<script src="/js/i18n-simple.js"></script>
<script src="/js/components/language-selector.js"></script>
<script src="/js/i18n-simple.js?v=0.1.0.1760643941"></script>
<script src="/js/components/language-selector.js?v=0.1.0.1760643941"></script>
<!-- Version Management & PWA -->
<script src="/js/version-manager.js"></script>

View file

@ -400,8 +400,8 @@ This framework acknowledges Te Tiriti o Waitangi and indigenous leadership in di
<!-- Internationalization -->
<script src="/js/i18n-simple.js"></script>
<script src="/js/components/language-selector.js"></script>
<script src="/js/i18n-simple.js?v=0.1.0.1760643941"></script>
<script src="/js/components/language-selector.js?v=0.1.0.1760643941"></script>
</body>
</html>

View file

@ -614,8 +614,8 @@
</footer>
<!-- Internationalization -->
<script src="/js/i18n-simple.js"></script>
<script src="/js/components/language-selector.js"></script>
<script src="/js/i18n-simple.js?v=0.1.0.1760643941"></script>
<script src="/js/components/language-selector.js?v=0.1.0.1760643941"></script>
<!-- Version Management & PWA -->
<script src="/js/version-manager.js"></script>

View file

@ -547,8 +547,8 @@
</footer>
<!-- Internationalization -->
<script src="/js/i18n-simple.js"></script>
<script src="/js/components/language-selector.js"></script>
<script src="/js/i18n-simple.js?v=0.1.0.1760643941"></script>
<script src="/js/components/language-selector.js?v=0.1.0.1760643941"></script>
<!-- Version Management & PWA -->
<script src="/js/version-manager.js"></script>