init
This commit is contained in:
		
						commit
						d013ece0f3
					
				
					 363 changed files with 20823 additions and 0 deletions
				
			
		
							
								
								
									
										42
									
								
								themes/duckquill/templates/partials/language_switcher.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								themes/duckquill/templates/partials/language_switcher.html
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,42 @@
 | 
			
		|||
{#- Based on https://github.com/welpo/tabi/blob/7b00ed1d9dca5c529d2816c5b6679bfe600d63fc/templates/partials/language_switcher.html -#}
 | 
			
		||||
 | 
			
		||||
<li id="language-switcher">
 | 
			
		||||
	<details class="closable">
 | 
			
		||||
		<summary class="circle" title="{{ macros_translate::translate(key='language', default='Language', language_strings=language_strings) }}">
 | 
			
		||||
			<i class="icon"></i>
 | 
			
		||||
		</summary>
 | 
			
		||||
		<ul>
 | 
			
		||||
			{%- for lcode, ldetails in config.languages -%}
 | 
			
		||||
				{#- Skip the current language to avoid linking to the current page -#}
 | 
			
		||||
				{%- if lang == lcode -%}
 | 
			
		||||
					{%- continue -%}
 | 
			
		||||
				{%- endif -%}
 | 
			
		||||
				{#- Dynamically load the language strings for each language -#}
 | 
			
		||||
				{%- set other_language_strings = load_data(path="i18n/" ~ lcode ~ ".toml", required=false) -%}
 | 
			
		||||
				{%- if not other_language_strings -%}
 | 
			
		||||
					{%- set other_language_strings = load_data(path="themes/duckquill/i18n/" ~ lcode ~ ".toml", required=false) -%}
 | 
			
		||||
				{%- endif -%}
 | 
			
		||||
				{#- Use the loaded language strings to get the language name -#}
 | 
			
		||||
				{% set language_name = macros_translate::translate(key="language_name", default=lcode, language_strings=other_language_strings) %}
 | 
			
		||||
				{#- Check if the language code matches the default language -#}
 | 
			
		||||
				{%- if lcode == config.default_language -%}
 | 
			
		||||
					{#- If it does, link to the root path (no language code in URL) -#}
 | 
			
		||||
					<li>
 | 
			
		||||
						<a lang="{{ lcode }}" href="{{ current_url | replace(from='/' ~ lang ~ '/', to = '/') }}">{{ language_name }}</a>
 | 
			
		||||
					</li>
 | 
			
		||||
					{#- Check if the current language is the default language -#}
 | 
			
		||||
					{#- If it is, append the language code to the base URL -#}
 | 
			
		||||
				{%- elif lang == config.default_language -%}
 | 
			
		||||
					<li>
 | 
			
		||||
						<a lang="{{ lcode }}" href="{{ config.base_url }}/{{ lcode }}{{ current_path | default(value="/") | safe }}">{{ language_name }}</a>
 | 
			
		||||
					</li>
 | 
			
		||||
				{%- else -%}
 | 
			
		||||
					{#- If it's not, replace the current language code in the URL with the new one -#}
 | 
			
		||||
					<li>
 | 
			
		||||
						<a lang="{{ lcode }}" href="{{ current_url | replace(from='/' ~ lang ~ '/', to='/' ~ lcode ~ '/') }}">{{ language_name }}</a>
 | 
			
		||||
					</li>
 | 
			
		||||
				{%- endif -%}
 | 
			
		||||
			{%- endfor -%}
 | 
			
		||||
		</ul>
 | 
			
		||||
	</details>
 | 
			
		||||
</li>
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue