Difference between revisions of "Template:LangSwitch"

From Pathfinder Wiki
m (29 revisions: import from WMC)
 
m (1 revision)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
<!-- Documentation of code Snippet:
+
<includeonly>{{#invoke: fallback|langSwitch}}</includeonly><noinclude>
1) "{{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}}" - is the chosen language, either set by parameter "lang=xx"
 
    or by language of the user "{{int:Lang}}"
 
2) "{{{ {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} |}}}" - is the input parameter matching the language for example {{{xx|}}}
 
3) Without the fallback templates the LangSwitch template would be
 
{{{
 
{{#switch: {{{ {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} |}}} // switch based on input parameter matching the language ie. xx
 
  | ~        = empty                                    // if |xx=~| than the template will return {{{empty}}} which is empty
 
  |          = {{#if: {{{default|}}} | default | en }}  // if xx is undefined or empty |xx=| than return {{{default}}} or {{{en}}}
 
  | #default = {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} // for all other cases return {{{xx|}}}
 
}}
 
|}}}
 
 
 
The actual template is bit more complicated calling templates {{GetFallback}} and {{GetFallback2}} to allow language fallback. For example if desired encoding is "sr-ec" (Serbian using Cyrillic alphabet) than the fall back would be "sr" (Serbian))
 
-->{{{
 
  {{#switch: {{{ {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} |}}}
 
  | ~ = empty
 
  |  = {{#switch: {{{ {{GetFallback| {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} |default=default}} |}}}
 
    | ~ = empty
 
    |  = {{#switch: {{{ {{GetFallback2| {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} |default=default}} |}}}
 
      | ~        = empty
 
      |          = {{#if: {{{default|}}} | default | en }}
 
      | #default = {{GetFallback2| {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} |default=default}}
 
      }}
 
    | #default = {{GetFallback| {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}} |default=default}}
 
    }}
 
  | #default = {{#if:{{{lang|}}}|{{{lang}}}|{{int:Lang}}}}
 
  }}
 
|}}}<includeonly>{{#ifeq:{{NAMESPACE}}|File||{{#if:{{{en|}}}{{{default|}}}{{{nocat|<noinclude>1</noinclude>}}}||[[Category:LangSwitch template without English version]]}}}}</includeonly><noinclude>
 
  
 +
{{heavily used template}}
 
{{Documentation}}
 
{{Documentation}}
  
 
</noinclude>
 
</noinclude>

Latest revision as of 01:46, 18 April 2018


Template:Heavily used template

Template documentation[create] [purge]