Difference between revisions of "Template:Metadata id"
Jump to navigation
Jump to search
m (... and that's not how ifeq works) |
(One other way?) |
||
Line 3: | Line 3: | ||
{{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}} | {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}} | ||
{{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}} | {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}} | ||
− | {{# | + | {{#switch: {{{1|}}} |
+ | | added = | ||
{{change||{{#var:pre_meta}}}} | {{change||{{#var:pre_meta}}}} | ||
{{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}} | {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}} | ||
− | + | | removed = | |
{{change|{{#var:cur_meta}}|}} | {{change|{{#var:cur_meta}}|}} | ||
{{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | ||
− | | | + | | = |
+ | | unchanged = | ||
{{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{change|{{#var:cur_meta}}|{{#var:pre_meta}}}} }} | {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{change|{{#var:cur_meta}}|{{#var:pre_meta}}}} }} | ||
{{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | ||
{{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}} | {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}} | ||
− | | | + | | #default = |
<strong class="error">Invalid parameter to [[Template:Metadata id]] {{{1}}}</strong> | <strong class="error">Invalid parameter to [[Template:Metadata id]] {{{1}}}</strong> | ||
− | + | }} | |
| <!-- Full release mode --> | | <!-- Full release mode --> | ||
{{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}} | {{#vardefineecho:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}} |
Revision as of 03:02, 3 May 2019
Used to generate incremental entity metadata IDs.
cur_meta
and pre_meta
are local variables, to avoid redundancy. meta_current_entity
is defined elsewhere, and meta_entity
and meta_pre_entity
are accessed via it. Those two values are incremented after this template.
Behavior changes if a meta_prerelease
variable is defined: the template supports an optional parameter which may be set to unchanged
(default), added
, or removed
, which can be used to mark metadata entries that were added or removed in the prerelease.