|
|
Line 1: |
Line 1: |
| <includeonly>{{#if:{{{colset|}}}
| | |
| | {{#vardefine:colset|{{{colset|}}}}}
| |
| | {{#vardefine:colset|1}}
| |
| }}{{#switch:{{{color|}}}
| |
| | ={{#vardefine:color| background-color: lightblue;}}
| |
| | Rainbow={{#vardefine:rainbow|rainbow}}
| |
| | #default ={{#vardefine:color| background-color: {{{color}}};}}
| |
| }}<table style="{{{style|}}}" class="infobox {{{class|}}}">
| |
| <tr style="{{#var:color|}}" class="textfloat {{#var:rainbow|}}">
| |
| <th class="title" colspan="{{#expr:{{#var:colset|1}}+1}}">{{{title|}}}</th>
| |
| </tr>
| |
| {{#if:{{{image|}}}
| |
| |<tr>
| |
| <td class="image" colspan="{{#expr:{{#var:colset|1}}+1}}">{{{image}}}</td>
| |
| </tr>
| |
| }}
| |
| {{#forargs:label
| |
| | key
| |
| | val
| |
| |
| |
| {{#if:{{{set{{#var:key|}}|}}}
| |
| | {{#vardefine:div|{{#expr:{{#var:colset|1}}/{{{set{{#var:key|1}}|}}}}}}}
| |
| <tr class="entry">
| |
| <th>{{#var:val|}}</th>
| |
| {{#forargs:data{{#var:key|}}/
| |
| | subkey
| |
| | subval
| |
| | <td colspan="{{#var:div|}}">{{#var:subval|}}</td>
| |
| }}
| |
| </tr>
| |
| |
| |
| {{#if:{{{data{{#var:key|}}|}}}
| |
| |<tr class="entry">
| |
| <th>{{#var:val|}}</th>
| |
| <td colspan="{{#var:colset|1}}">{{{data{{#var:key|}}|}}}</td>
| |
| </tr>
| |
| }}
| |
| }}
| |
| }}
| |
| </table></includeonly><noinclude>{{DISPLAYTITLE:Infobox Prototype}}
| |
| == Description ==
| |
| This is infobox proto. All infoboxes should use this proto.
| |
| == How to Use ==
| |
| <u>'''Valid Parameters'''</u>:
| |
| :* '''Content Parameters''': <code>title</code>, <code>image</code>, <code>label???</code>, <code>data???</code>
| |
| :* '''Layout Parameters''': <code>colset</code>, <code>set???</code>
| |
| :* '''Styling Parameters''': <code>style</code>, <code>class</code>, <code>color</code>
| |
| <u>'''Parameter Instructions'''</u>
| |
| :* <code>title</code>: (Optional) The heading. Omitting will result in a thin line.
| |
| :* <code>image</code>: (Optional) The image on the top.
| |
| :* <code>label???</code>: Heading of entry. '''Required''' for entry.
| |
| :* <code>data???</code>: Data of entry. '''Required''' for entry.
| |
| :* <code>set???</code>: (Optional) Number of entry columns (label does not count).
| |
| :* <code>colset</code>: (Optional) '''Required''' only if having <code>set???</code>, the [[Template:PRODUCT|product]] of <code>set</code> numbers in the whole infobox.
| |
| :* <code>style</code>: (Optional) Style of in infobox, following CSS syntax.
| |
| :* <code>class</code>: (Optional) Class of infobox, following HTML <code>class</code> attribute syntax.
| |
| :* <code>color</code>: (Optional) Color of the heading. Default uses wikiskin default.
| |
| <u>'''Other Notes'''</u>
| |
| :* Both <code>label???</code> and <code>data???</code> is required to add an entry.
| |
| :** <code>set???</code> is required to add an multiple-column entry.
| |
| :** If you are adding a multiple-column entry, the <code>data</code> should be written as <code>data???/...</code>.
| |
| :** In this case, if <code>data</code> is omitted, a entry will still be added.
| |
| :* <code>colset</code> can also be least common multiple (LCM), just make sure the <code>set???</code> is fractional to <code>colset</code>
| |
| </noinclude>
| |