Changes

Jump to navigation Jump to search
rewrite subtag logic to reduce subtemplate calls
Line 12: Line 12:  
Define a few expensive variables here.
 
Define a few expensive variables here.
   −
   {{#arrayindex:vars|0}} = main status
+
   {{#arrayindex:sourceUrl|0}} = GitHub URL, else custom source URL
   {{#arrayindex:vars|1}} = main status (no subtag)
+
   {{#arrayindex:status|0}} = main status
   {{#arrayindex:vars|2}} = beta status
+
   {{#arrayindex:status|1}} = beta status
  {{#arrayindex:vars|3}} = beta status (no subtag)
   
   {{#arrayindex:statuscompare|0}} = whether the compatibility info is equivalent between main and beta ('same' or 'different')
 
   {{#arrayindex:statuscompare|0}} = whether the compatibility info is equivalent between main and beta ('same' or 'different')
   −
-->{{#arraydefine:vars|<!--
+
-->{{#arraydefine:sourceUrl|{{#if:{{{github|}}}|{{{github}}}|{{{source|}}}}}}}<!--
  0-->{{Modding:Mod compatibility/entry/status|source={{#if:{{{github|}}}|{{{github}}}|{{{source|}}}}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}}},<!--
+
-->{{#arraydefine:status|<!--
  1-->{{Modding:Mod compatibility/entry/status|source={{#if:{{{github|}}}|{{{github}}}|{{{source|}}}}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}|no subtag=1}},<!--
+
   0-->{{Modding:Mod compatibility/entry/status|source={{#arrayindex:sourceUrl|0}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}}},<!--
   2-->{{Modding:Mod compatibility/entry/status|source={{#if:{{{github|}}}|{{{github}}}|{{{source|}}}}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}|beta unofficial={{{beta unofficial url|}}}|beta broke in={{{beta broke in|}}}|beta status={{{beta status|}}}}},<!--
+
   1-->{{Modding:Mod compatibility/entry/status|source={{#arrayindex:sourceUrl|0}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}|beta unofficial={{{beta unofficial url|}}}|beta broke in={{{beta broke in|}}}|beta status={{{beta status|}}}}}
   3-->{{Modding:Mod compatibility/entry/status|source={{#if:{{{github|}}}|{{{github}}}|{{{source|}}}}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}|beta unofficial={{{beta unofficial url|}}}|beta broke in={{{beta broke in|}}}|beta status={{{beta status|}}}|no subtag=1}}
   
}}{{#arraydefine:statuscompare|<!--
 
}}{{#arraydefine:statuscompare|<!--
  0-->{{Modding:Mod compatibility/entry/compare status|source={{#if:{{{github|}}}|{{{github}}}|{{{source|}}}}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}|beta unofficial={{{beta unofficial url|}}}|beta broke in={{{beta broke in|}}}|beta status={{{beta status|}}}}}
+
  0-->{{Modding:Mod compatibility/entry/compare status|source={{#arrayindex:sourceUrl|0}}|unofficial={{{unofficial url|}}}|broke in={{{broke in|}}}|status={{{status|}}}|beta unofficial={{{beta unofficial url|}}}|beta broke in={{{beta broke in|}}}|beta status={{{beta status|}}}}}
 
}}<!--
 
}}<!--
   Line 37: Line 35:     
-->
 
-->
|- class="mod" style="line-height: 1em; {{#switch:{{#arrayindex:vars|1}} |ok|optional=background: #9F9; |workaround|unofficial=background: #CF9; |broken=background: #F99; |obsolete|abandoned=background: #999}}" <!--
+
|- class="mod" style="line-height: 1em; {{#switch:{{#arrayindex:status|0}} |ok|optional=background: #9F9; |workaround|unofficial=background: #CF9; |broken=background: #F99; |obsolete|abandoned=background: #999}}" <!--
 
-->id="{{anchorencode:{{#arrayindex:names|0}}}}" <!--
 
-->id="{{anchorencode:{{#arrayindex:names|0}}}}" <!--
 
-->data-id="{{#arrayprint:ids|,|@@@|@@@}}" <!--
 
-->data-id="{{#arrayprint:ids|,|@@@|@@@}}" <!--
Line 48: Line 46:  
-->{{#if:{{{source|}}}|data-custom-source="{{#tag:nowiki|{{{source}}}}}"}} <!--
 
-->{{#if:{{{source|}}}|data-custom-source="{{#tag:nowiki|{{{source}}}}}"}} <!--
 
-->data-url="{{#tag:nowiki|{{#if:{{{nexus id|}}}|{{nexus mod|{{{nexus id}}}}}|{{#if:{{{cf id|}}}|https://community.playstarbound.com/resources/{{urlencode:{{{cf id}}}}}|{{#if:{{{moddrop id|}}}|https://www.moddrop.com/sdv/mod/{{urlencode:{{{moddrop id}}}}}|{{{url|}}}}}}}}}}}" <!--
 
-->data-url="{{#tag:nowiki|{{#if:{{{nexus id|}}}|{{nexus mod|{{{nexus id}}}}}|{{#if:{{{cf id|}}}|https://community.playstarbound.com/resources/{{urlencode:{{{cf id}}}}}|{{#if:{{{moddrop id|}}}|https://www.moddrop.com/sdv/mod/{{urlencode:{{{moddrop id}}}}}|{{{url|}}}}}}}}}}}" <!--
-->data-status="{{#arrayindex:vars|1}}" <!--
+
-->data-status="{{#arrayindex:status|0}}" <!--
 
-->{{#if:{{{broke in|}}}|data-broke-in="{{{broke in}}}"}} <!--
 
-->{{#if:{{{broke in|}}}|data-broke-in="{{{broke in}}}"}} <!--
 
-->{{#if:{{{unofficial version|}}}|data-unofficial-version="{{{unofficial version}}}"}} <!--
 
-->{{#if:{{{unofficial version|}}}|data-unofficial-version="{{{unofficial version}}}"}} <!--
 
-->{{#if:{{{unofficial url|}}}|data-unofficial-url="{{#tag:nowiki|{{{unofficial url}}}}}"}} <!--
 
-->{{#if:{{{unofficial url|}}}|data-unofficial-url="{{#tag:nowiki|{{{unofficial url}}}}}"}} <!--
 
-->{{#ifeq:{{#arrayindex:statuscompare|0}}|different|<!--
 
-->{{#ifeq:{{#arrayindex:statuscompare|0}}|different|<!--
   -->data-beta-status="{{#arrayindex:vars|3}}" <!--
+
   -->data-beta-status="{{#arrayindex:status|1}}" <!--
 
   -->{{#if:{{{beta broke in|}}}|data-beta-broke-in="{{{beta broke in}}}"}} <!--
 
   -->{{#if:{{{beta broke in|}}}|data-beta-broke-in="{{{beta broke in}}}"}} <!--
 
   -->{{#if:{{{beta unofficial version|}}}|data-beta-unofficial-version="{{{beta unofficial version}}}"}} <!--
 
   -->{{#if:{{{beta unofficial version|}}}|data-beta-unofficial-version="{{{beta unofficial version}}}"}} <!--
Line 68: Line 66:     
summary--><span class="mod-summary">{{Modding:Mod compatibility/entry/summary
 
summary--><span class="mod-summary">{{Modding:Mod compatibility/entry/summary
   |status            = {{#arrayindex:vars|0}}
+
   |status            = {{#arrayindex:status|0}}
 
   |summary            = {{{summary|}}}
 
   |summary            = {{{summary|}}}
 
   |unofficial url    = {{{unofficial url|}}}
 
   |unofficial url    = {{{unofficial url|}}}
 
   |unofficial version = {{{unofficial version|}}}
 
   |unofficial version = {{{unofficial version|}}}
}}</span>{{#ifeq:{{#arrayindex:vars|0}}|optional|<ref name="optional-update" />}}<!--
+
  |source            = {{#arrayindex:sourceUrl|0}}
 +
}}</span>{{#ifeq:{{#arrayindex:status|0}}|optional|<ref name="optional-update" />}}<!--
    
beta summary (if different)-->{{#ifeq:{{#arrayindex:statuscompare|0}}|different|<br />'''1.4 (upcoming)<!--{{version|beta|link=0}}-beta-->:'''&#32;<span class="mod-beta-summary">{{Modding:Mod compatibility/entry/summary
 
beta summary (if different)-->{{#ifeq:{{#arrayindex:statuscompare|0}}|different|<br />'''1.4 (upcoming)<!--{{version|beta|link=0}}-beta-->:'''&#32;<span class="mod-beta-summary">{{Modding:Mod compatibility/entry/summary
   |status            = {{#arrayindex:vars|2}}
+
   |status            = {{#arrayindex:status|1}}
 
   |summary            = {{{beta summary|}}}
 
   |summary            = {{{beta summary|}}}
 
   |unofficial url    = {{{beta unofficial url|}}}
 
   |unofficial url    = {{{beta unofficial url|}}}
 
   |unofficial version = {{{beta unofficial version|}}}
 
   |unofficial version = {{{beta unofficial version|}}}
}}</span>{{#ifeq:{{#arrayindex:vars|2}}|optional|<ref name="optional-update" />}}}}<!--
+
  |source            = {{#arrayindex:sourceUrl|0}}
 +
}}</span>{{#ifeq:{{#arrayindex:status|1}}|optional|<ref name="optional-update" />}}}}<!--
    
warnings-->{{#if:{{{warnings|}}}|<br />⚠&#32;{{#arrayprint:warnings|<br />⚠&#32;}}}}
 
warnings-->{{#if:{{{warnings|}}}|<br />⚠&#32;{{#arrayprint:warnings|<br />⚠&#32;}}}}
translators
8,403

edits

Navigation menu