Difference between revisions of "IssueExists"
From Sonic Retro
(Created page with "<includeonly><div style="display:none;">{{#vardefine:pageName|{{{1|}}}}} {{#vardefine:issueName|{{#explode:{{#var:pageName}}|(|0}}}} {{#if:{{#pos:{{#var:pageName}}|(}}|{{#vard...") |
|||
Line 1: | Line 1: | ||
− | <includeonly>< | + | <includeonly><span style="display:none;">{{ |
− | {{#vardefine:issueName|{{#explode:{{#var:pageName}}|(|0}}}} | + | #vardefine:pageName|{{{1|}}}}}{{ |
− | {{#if:{{#pos:{{#var:pageName}}|(}}|{{#vardefine:bracketsBit|({{#explode:{{#var:pageName}}|(|1}}}}|}} | + | #vardefine:issueName|{{#explode:{{#var:pageName}}|(|0}}}}{{ |
− | {{#vardefine:number|{{#explode:{{#var:issueName}}| |-1}}}} | + | #if:{{#pos:{{#var:pageName}}|(}}|{{#vardefine:bracketsBit|({{#explode:{{#var:pageName}}|(|1}}}}|}}{{ |
− | {{#vardefine:seriesName|{{#explode:{{#var:issueName}}|{{#var:number}}|0}}}} | + | #vardefine:number|{{#explode:{{#var:issueName}}| |-1}}}}{{ |
− | + | #vardefine:seriesName|{{#explode:{{#var:issueName}}|{{#var:number}}|0}}}}{{ | |
<!-- if the series name and issue name are the same, there is no number, therefore we can't do any calculations --> | <!-- if the series name and issue name are the same, there is no number, therefore we can't do any calculations --> | ||
− | + | #ifeq:{{#var:issueName}}|{{#var:seriesName}}||{{ | |
− | + | #ifeq:{{{2|}}}|prev|{{ | |
− | {{#ifeq:{{{2|}}}|prev| | + | #vardefine:prevIssueNumber|{{#expr:{{#var:number}}-1}}}}{{ |
− | {{#vardefine:prevIssueNumber|{{#expr:{{#var:number}}-1}}}} | + | #vardefine:prevIssueNumber|{{#pad:{{#var:prevIssueNumber}}|{{#len:{{#var:number}}}}|0}}}}{{ |
− | {{#vardefine:prevIssueNumber|{{#pad:{{#var:prevIssueNumber}}|{{#len:{{#var:number}}}}|0}}}} | + | #vardefine:link|{{#var:seriesName}} {{#var:prevIssueNumber}} {{#var:bracketsBit}}}}{{ |
− | {{#vardefine:link|{{#var:seriesName}} {{#var:prevIssueNumber}} {{#var:bracketsBit}}}} | + | #vardefine:prevIssueNumber|}} |
− | {{#vardefine:prevIssueNumber|}} | ||
− | |||
|{{#ifeq:{{{2|}}}|next| | |{{#ifeq:{{{2|}}}|next| | ||
− | {{#vardefine:nextIssueNumber|{{#expr:{{#var:number}}+1}}}} | + | {{#vardefine:nextIssueNumber|{{#expr:{{#var:number}}+1}}}}{{ |
− | {{#vardefine:nextIssueNumber|{{#pad:{{#var:nextIssueNumber}}|{{#len:{{#var:number}}}}|0}}}} | + | #vardefine:nextIssueNumber|{{#pad:{{#var:nextIssueNumber}}|{{#len:{{#var:number}}}}|0}}}}{{ |
− | {{#vardefine:link|{{#var:seriesName}} {{#var:nextIssueNumber}} {{#var:bracketsBit}}}} | + | #vardefine:link|{{#var:seriesName}} {{#var:nextIssueNumber}} {{#var:bracketsBit}}}}{{ |
− | {{#vardefine: | + | #vardefine:nextIssueNumber|}} |
+ | |}}}}{{#vardefine:issueName|}}{{#vardefine:bracketsBit|}}{{#vardefine:number|}}{{#vardefine:seriesName|}} | ||
+ | }}</span>{{ | ||
+ | #if:{{#var:link}}|{{#ifexist:{{#var:link}}||{{#vardefine:link|}}}}}}</includeonly><noinclude> | ||
− | + | Template for checking if a next or previous issue exists. Built mainly for comics, but could be for anything. If it can't find a page, it prints nothing. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | To get the output you have to use <pre>{{#var:link}}</pre>otherwise when using it as a link, it tries to shove a div tag in there and doesn't format properly. | |
− | <pre>{{IssueExists|Sonic the Hedgehog 034 (Archie)|next}}</pre> | + | ==Examples== |
+ | <pre>{{IssueExists|Sonic the Hedgehog 034 (Archie)|next}} | ||
+ | {{#var:link}}</pre> | ||
{{IssueExists|Sonic the Hedgehog 034 (Archie)|next}} | {{IssueExists|Sonic the Hedgehog 034 (Archie)|next}} | ||
+ | {{#var:link}} | ||
− | <pre>{{IssueExists|Sonic the Hedgehog 034 (Archie)|prev}}</pre> | + | <pre>{{IssueExists|Sonic the Hedgehog 034 (Archie)|prev}} |
+ | {{#var:link}}</pre> | ||
{{IssueExists|Sonic the Hedgehog 034 (Archie)|prev}} | {{IssueExists|Sonic the Hedgehog 034 (Archie)|prev}} | ||
+ | {{#var:link}} | ||
− | <pre>{{IssueExists|Sonic the Hedgehog 432 (Archie)|prev}}</pre> | + | <pre>{{IssueExists|Sonic the Hedgehog 432 (Archie)|prev}} |
+ | {{#var:link}}</pre> | ||
{{IssueExists|Sonic the Hedgehog 432 (Archie)|prev}} | {{IssueExists|Sonic the Hedgehog 432 (Archie)|prev}} | ||
+ | {{#var:link}} | ||
− | <pre>{{IssueExists|Sonic the Comic 006|prev}}</pre> | + | <pre>{{IssueExists|Sonic the Comic 006|prev}} |
+ | {{#var:link}}</pre> | ||
{{IssueExists|Sonic the Comic 006|prev}} | {{IssueExists|Sonic the Comic 006|prev}} | ||
+ | {{#var:link}} | ||
[[Category:Sonic Retro templates]] | [[Category:Sonic Retro templates]] | ||
</noinclude> | </noinclude> |
Revision as of 16:31, 28 September 2019
Template for checking if a next or previous issue exists. Built mainly for comics, but could be for anything. If it can't find a page, it prints nothing.
{{#var:link}}otherwise when using it as a link, it tries to shove a div tag in there and doesn't format properly.
Examples
{{IssueExists|Sonic the Hedgehog 034 (Archie)|next}} {{#var:link}}
Sonic the Hedgehog 035 (Archie)
{{IssueExists|Sonic the Hedgehog 034 (Archie)|prev}} {{#var:link}}
Sonic the Hedgehog 033 (Archie)
{{IssueExists|Sonic the Hedgehog 432 (Archie)|prev}} {{#var:link}}
{{IssueExists|Sonic the Comic 006|prev}} {{#var:link}}
Sonic the Comic 005