Template:Qif/doc

From Wikipedia, the free encyclopedia

Template:Qif formerly implemented an "if" function, which is now implemented by the parser function {{#if}}.

Purpose and function[edit]

Provides if then else functionality.

  • Parameter else is optional.
  • This template has undefined behaviour, if parameter test or then (or both) are missing.
  • This template also has undefined behaviour, if any parameter (be it named or unnamed) that is different from test, then or else is defined when calling the template.

Note that {{qif}} does not work when subst'ed (like {{ifndef}}, the then part alone as in {{ifdef}} can be substituted).

Of course it's impossible to use vertical bars in parameter values directly, use either | or Template:! - the latter is only relevant for wiki table delimiters.

Wikipedia CTO Brion Vibber expressed support to implement the functionality of qif into MediaWiki; this became {{#if}}.

Usage[edit]

{{Qif
  |test=VARIABLE_OR_PARAMETER_TO_TEST
  |then=code if 'test' is not empty
  |else=code if 'test' is empty
}}

Parameter else is optional. So this was also possible:

{{Qif
  |test=VARIABLE_OR_PARAMETER_TO_TEST
  |then=code if 'test' is not empty
}}

Examples[edit]

Code Result
{{Qif
  |test={{boolne|foo|bar}}
  |then=true
  |else=false
}}

true

{{Qif
  |test={{booleq|foo|bar}}
  |then=true
  |else=false
}}

false

{{Qif
  |test=
  |then=bar
}}
{{Qif
  |test=foo
  |then=bar
}}

bar

See also[edit]