Difference between revisions of "Template:Cat handler"

From Self-sufficiency
Jump to: navigation, search
m (1 revision)
(Starting out this category handler template.)
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{#if:
+
{{#ifeq: {{lc: {{{nocat|}}} }} | true
  {{#ifeq: {{lc: {{{nocat|}}} }} | true
+
| <!--"nocat=true", don't categorise-->
  | dontcat    <!--"nocat=true", don't categorize-->
+
| {{cat handle/numbered
  }}{{#ifeq: {{lc: {{{categories|}}} }} | no
+
   | {{{1|}}}
  | dontcat
+
   | {{{2|}}}
  }}{{#switch: {{lc: {{{category2|¬}}} }}
+
  | {{{3|}}}
  | yes
+
  | {{{4|}}}
  | ¬  =  <!--Not defined-->
+
  | {{{5|}}}
  | #default = dontcat  <!--"category2 = no/'defined but empty'/'anything'"-->
+
  | {{{6|}}}
  }}{{#switch: {{lc: {{{subpage|}}} }}
+
  | {{{7|}}}
  | no =
+
  | {{{8|}}}
    {{basepage subpage
+
  | {{{9|}}}
    |
+
  | {{{10|}}}
    | dontcat    <!--"subpage=no" and on a subpage-->
+
  | data =  
    | page = {{{page|}}}  <!--For testing-->
+
    {{namespace detect
    }}
+
    | main = {{{main| {{{other| 1 }}} }}}
  | only =
+
    | talk = {{{talk| {{{other|}}} }}}
    {{basepage subpage
+
    | user = {{{user| {{{other|}}} }}}
    | dontcat    <!--"subpage=only" and not on a subpage-->
+
    | wikipedia = {{{wikipedia| {{{other|}}} }}}
    | page = {{{page|}}}  <!--For testing-->
+
    | file = {{{file| {{{image| {{{other| 1 }}} }}} }}}
    }}
+
    | mediawiki = {{{mediawiki| {{{other|}}} }}}
  }}
+
    | template = {{{template| {{{other|}}} }}}
 
+
    | help = {{{help| {{{other| 1 }}} }}}
|  <!--Don't categorise (result was "dontcat" or "dontcatdontcat" and so on)-->
+
    | category = {{{category| {{{other| 1 }}} }}}
| <!--Check blacklist-->
+
    | portal = {{{portal| {{{other| 1 }}} }}}
  {{#switch:
+
    | other = {{{other|}}}   <!--Namespace special or a new namespace-->
    {{#ifeq: {{lc: {{{nocat|}}} }} | false
+
    | page = {{{page|}}}  <!--For testing and demonstration-->
    |  <!--"nocat=false", skip blacklist check-->
+
    | {{#ifeq: {{lc: {{{categories|}}} }} | yes
+
      |  <!--Skip blacklist check-->
+
      | {{#ifeq: {{lc: {{{category2|}}} }} | yes
+
        |  <!--Skip blacklist check-->
+
        | {{cat handler/blacklist| page = {{{page|}}} }}  <!--Check blacklist-->
+
        }}
+
      }}
+
    }}
+
   | hide = <!--Blacklist returned "hide", don't categorize-->
+
  | #default  =
+
    <!--Check if any namespace parameter is defined-->
+
    {{#ifeq: h0#384!5nea+w9 | {{{all| {{{main| {{{talk| {{{user| {{{wikipedia| {{{file| {{{mediawiki| {{{template| {{{help| {{{category| {{{portal| {{{book| {{{other| h0#384!5nea+w9 }}} }}} }}} }}} }}} }}} }}} }}} }}} }}} }}} }}} }}}
+
    | <!--No namespace parameters fed, basic usage-->
+
      {{namespace detect
+
      | main = {{{1|}}}
+
      | file = {{{1|}}}
+
      | help = {{{1|}}}
+
      | category = {{{1|}}}
+
      | portal = {{{1|}}}
+
      | book = {{{1|}}}
+
      | page = {{{page|}}}   <!--For testing and demonstration-->
+
      }}
+
    | <!--Namespace parameters fed, advanced usage.
+
          If "data" is a number, return the corresponding
+
          numbered parameter, else return "data".  -->
+
      {{{all|}}}{{cat handler/numbered
+
      | 1 = {{{1|}}}
+
      | 2 = {{{2|}}}
+
      | 3 = {{{3|}}}
+
      | 4 = {{{4|}}}
+
      | 5 = {{{5|}}}
+
      | 6 = {{{6|}}}
+
      | 7 = {{{7|}}}
+
      | 8 = {{{8|}}}
+
      | 9 = {{{9|}}}
+
      | 10 = {{{10|}}}
+
      | data =  
+
        <!--Check what namespace, and return the data for it.
+
            Respecting empty parameters on purpose.  -->
+
        {{namespace detect
+
        | main = {{{main| {{{other|}}} }}}
+
        | talk = {{{talk| {{{other|}}} }}}
+
        | user = {{{user| {{{other|}}} }}}
+
        | wikipedia = {{{wikipedia| {{{project| {{{other|}}} }}} }}}
+
        | file = {{{file| {{{image| {{{other|}}} }}} }}}
+
        | mediawiki = {{{mediawiki| {{{other|}}} }}}
+
        | template = {{{template| {{{other|}}} }}}
+
        | help = {{{help| {{{other|}}} }}}
+
        | category = {{{category| {{{other|}}} }}}
+
        | portal = {{{portal| {{{other|}}} }}}
+
        | book = {{{book| {{{other|}}} }}}
+
        | other = {{{other|}}} <!--Namespace special or a new namespace-->
+
        | page = {{{page|}}}  <!--For testing and demonstration-->
+
        }}
+
      }}
+
 
     }}
 
     }}
 
   }}
 
   }}
 
}}<noinclude>
 
}}<noinclude>
  
{{pp-template}}
+
<!-- {{pp-template}} -->
 
{{documentation}}
 
{{documentation}}
 
<!-- Add categories and interwikis to the /doc subpage, not here! -->
 
<!-- Add categories and interwikis to the /doc subpage, not here! -->
 
</noinclude>
 
</noinclude>

Revision as of 04:00, 15 November 2009

Template:Cat handle/numbered