Difference between revisions of "Template:PropVals/Group"

From Salem Wiki
Jump to: navigation, search
m (changed fixed separators into optional named-parameters)
m (increased #args to 4 from 3, to show how to expand #args.)
Line 14: Line 14:
 
}}<!--
 
}}<!--
 
-->{{!}}{{#sub:{{{3}}} | 0 | {{#rpos:{{{3}}}|{{{sep|;}}} }} }}
 
-->{{!}}{{#sub:{{{3}}} | 0 | {{#rpos:{{{3}}}|{{{sep|;}}} }} }}
 +
}}<!--
 +
-->{{#if: {{{4|}}}
 +
| {{#ifeq: {{PropVals/Split|val={{{3|}}}|part=tail}}
 +
| {{PropVals/Split|val={{{4|}}}|part=tail}}
 +
|| {{{grpsep|/\}}} {{PropVals/Split|val={{{4}}}|part=tail}}
 +
}}<!--
 +
-->{{!}}{{#sub:{{{4}}} | 0 | {{#rpos:{{{4}}}|{{{sep|;}}} }} }}
 
}}<!--
 
}}<!--
 
-->}}
 
-->}}
 
}}
 
}}
 
</onlyinclude><noinclude>{{documentation}}</noinclude>
 
</onlyinclude><noinclude>{{documentation}}</noinclude>

Revision as of 14:03, 22 June 2012

{{{1}}}|{{{1}}


Template documentation (for the template shown above, sometimes hidden or invisible)

Description

  • This is a wrapper-template that generates output, which will be used as arguments for {{PropVals/List}}.
    {{#arraymap:}} will be used as a wrapper, that uses this generated-output, to inject the extra arguments for {{PropVals/List}}.
    This generated-output is a concatenation of grouped-records, using {{PropVals/Group/NextPart}} to output these grouped-records.
  • This wrapper-template is used to feed individual records to its helper-template, {{PropVals/Group/NextPart}}, therefore it has a hard-coded limit on the amount of records it can process !
    This limit, currently 20, can be increased by properly expanding the code inside...

Syntax

Type the below code somewhere inside your code:
{{PropVals/Group |sep={{{sep|;}}} |grpsep={{{grpsep|/\}}} |<record>|<record>|<record>|etc...}}

Examples

  1. {{PropVals/Group|sep={{{sep|;}}}|grpsep={{{grpsep|/\}}}|Lime;15;Startpost |Flint;15;Startpost |Stone;30;Startpost |Lime;8;Cornerpost |Flint;8;Cornerpost |Stone;15;Cornerpost |Flint;1;Wallsegment |Stone;3;Wallsegment |Board;10;Gate |Nails;4;Gate}}
    gives:
    Startpost|Lime;15|Flint;15|Stone;30/\ Cornerpost|Lime;8