Actions

Template

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><div style="display:none;">{{#vardefine:pageName|{{{1|}}}}}
+
<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:{{#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:nextIssueNumber|}}
+
#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.
{{#vardefine:issueName|}}
 
{{#vardefine:bracketsBit|}}
 
{{#vardefine:number|}}
 
{{#vardefine:seriesName|}}
 
}}
 
</div>{{#if:{{#var:link}}|{{#ifexist:{{#var:link}}|{{#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.

To get the output you have to use
{{#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