Difference between revisions of "Template:Category handler"

From Self-sufficiency
Jump to: navigation, search
(More efficient code for the "category" parameter. No change in functionality.)
m (1 revision imported from wikipedia:Template:Category_handler)
 
(14 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{#if:
+
{{#invoke:Category handler|main}}<noinclude>
  {{#ifeq: {{lc: {{{nocat|}}} }} | true
+
  | dontcat    <!--"nocat=true", don't categorize-->
+
  }}{{#ifeq: {{lc: {{{categories|}}} }} | no
+
  | dontcat  <!--"categories=no", don't categorize-->
+
  }}{{#switch: {{lc: {{{category|¬}}} }}
+
  | no            <!--"category = no"-->
+
  |    = dontcat  <!--"category =", defined but empty-->
+
  }}  <!--Else "category = ¬" or not defined or "yes" or other data-->
+
 
+
|  <!--Don't categorise (result was "dontcat" or "dontcatdontcat" and so on)-->
+
| <!--If "data" is a number, return the corresponding
+
      numbered parameter, else return "data"-->
+
  {{cat handler/numbered
+
  | 1 = {{{1|}}}
+
  | 2 = {{{2|}}}
+
  | 3 = {{{3|}}}
+
  | 4 = {{{4|}}}
+
  | 5 = {{{5|}}}
+
  | 6 = {{{6|}}}
+
  | 7 = {{{7|}}}
+
  | 8 = {{{8|}}}
+
  | 9 = {{{9|}}}
+
  | 10 = {{{10|}}}
+
  | data =
+
    {{#switch:
+
      {{#ifeq: {{lc: {{{nocat|}}} }} | false
+
      |  <!--"nocat=false", skip blacklist check-->
+
      | {{#ifeq: {{lc: {{{categories|}}} }} | yes
+
        |  <!--"categories=yes", skip blacklist check-->
+
        | {{#ifeq: {{lc: {{{category|}}} }} | yes
+
          |  <!--"category=yes", skip blacklist check-->
+
          | {{cat handler/blacklist| page = {{{page|}}} }}  <!--Check blacklist-->
+
          }}
+
        }}
+
      }}
+
    | hide = <!--Blacklist returned "hide", don't categorize-->
+
    | #default  =
+
      <!--Check what namespace, and return the data for it-->
+
      <!--Respecting empty parameters on purpose-->
+
      {{namespace detect
+
      | main = {{{main| {{{other| 1 }}} }}}
+
      | talk = {{{talk| {{{other|}}} }}}
+
      | user = {{{user| {{{other|}}} }}}
+
      | wikipedia = {{{wikipedia| {{{project| {{{other|}}} }}} }}}
+
      | file = {{{file| {{{image| {{{other| 1 }}} }}} }}}
+
      | mediawiki = {{{mediawiki| {{{other|}}} }}}
+
      | template = {{{template| {{{other|}}} }}}
+
      | help = {{{help| {{{other| 1 }}} }}}
+
      | category = {{{category| {{{other| 1 }}} }}}
+
      | portal = {{{portal| {{{other| 1 }}} }}}
+
      | other = {{{other|}}}  <!--Namespace special or a new namespace-->
+
      | page = {{{page|}}}  <!--For testing and demonstration-->
+
      }}
+
    }}
+
  }}
+
}}<noinclude>
+
 
+
{{pp-template}}
+
 
{{documentation}}
 
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
+
<!-- Add categories to the /doc subpage, and interwikis to Wikidata. -->
 
</noinclude>
 
</noinclude>

Latest revision as of 10:54, 17 June 2016