Line 31: |
Line 31: |
| -->{{#arraydefine:names|{{{name|}}}}}{{#arrayslice:altNames|names|1}}<!-- | | -->{{#arraydefine:names|{{{name|}}}}}{{#arrayslice:altNames|names|1}}<!-- |
| -->{{#arraydefine:authors|{{{author|}}}}}{{#arrayslice:altAuthors|authors|1}}<!-- | | -->{{#arraydefine:authors|{{{author|}}}}}{{#arrayslice:altAuthors|authors|1}}<!-- |
| + | -->{{#arraydefine:ids|{{{id|}}}}}<!-- |
| | | |
| Build output | | Build output |
Line 41: |
Line 42: |
| -->{{#if:{{{github|}}}|data-github="{{{github}}}"}} <!-- | | -->{{#if:{{{github|}}}|data-github="{{{github}}}"}} <!-- |
| -->{{#if:{{{source|}}}|data-custom-source="{{{source|}}}"}} | | -->{{#if:{{{source|}}}|data-custom-source="{{{source|}}}"}} |
− | | {{#if:{{{nexus id|}}}|[{{nexus mod|{{{nexus id}}}}} <span class="mod-name">{{#arrayindex:names|0}}</span>]|{{#if:{{{cf id|}}}|[https://community.playstarbound.com/resources/{{urlencode:{{{cf id}}}}} <span class="mod-name">{{#arrayindex:names|0}}</span>]|{{#if:{{{url|}}}|[{{{url}}} <span class="mod-name">{{#arrayindex:names|0}}</span>]|<span class="mod-name">{{#arrayindex:names|0}}</span>}}}}}}{{#ifexpr:{{#arraysize:altNames}} > 0|<br /><small style="font-size:0.75em;">(aka <span class="mod-name2">{{#arrayprint:altNames|,|@@@|@@@}}</span>)</small>}} | + | | {{#if:{{{nexus id|}}}|[{{nexus mod|{{{nexus id}}}}} <span class="mod-name">{{#arrayindex:names|0}}</span>]|{{#if:{{{cf id|}}}|[https://community.playstarbound.com/resources/{{urlencode:{{{cf id}}}}} <span class="mod-name">{{#arrayindex:names|0}}</span>]|{{#if:{{{url|}}}|[{{{url}}} <span class="mod-name">{{#arrayindex:names|0}}</span>]|<span class="mod-name">{{#arrayindex:names|0}}</span>}}}}}}{{#ifexpr:{{#arraysize:altNames}} > 0|<br /><small style="font-size:0.75em;">(aka <span class="mod-name2">{{#arrayprint:altNames|, |@@@|@@@}}</span>)</small>}} |
− | | <span class="mod-author">{{#arrayindex:authors|0}}</span>{{#ifexpr:{{#arraysize:altAuthors}} > 0|<br /><small style="font-size:0.75em;">(aka <span class="mod-author2">{{#arrayprint:altAuthors|,|@@@|@@@}}</span>)</small>}} | + | | <span class="mod-author">{{#arrayindex:authors|0}}</span>{{#ifexpr:{{#arraysize:altAuthors}} > 0|<br /><small style="font-size:0.75em;">(aka <span class="mod-author2">{{#arrayprint:altAuthors|, |@@@|@@@}}</span>)</small>}} |
| |class="summary"|<!-- | | |class="summary"|<!-- |
| | | |
Line 62: |
Line 63: |
| | <small>{{#if:{{{beta broke in|}}}|<span class="mod-broke-in">{{{beta broke in}}}</span>|<span class="broke-in">{{{broke in|}}}</span>}}</small> | | | <small>{{#if:{{{beta broke in|}}}|<span class="mod-broke-in">{{{beta broke in}}}</span>|<span class="broke-in">{{{broke in|}}}</span>}}</small> |
| | {{#if:{{{github|}}}|[https://github.com/{{{github}}} source]|{{#if:{{{source|}}}|[{{{source}}} source]|<span style="color: red; font-size: 0.85em; opacity: 0.5;">closed source</span>}}}} | | | {{#if:{{{github|}}}|[https://github.com/{{{github}}} source]|{{#if:{{{source|}}}|[{{{source}}} source]|<span style="color: red; font-size: 0.85em; opacity: 0.5;">closed source</span>}}}} |
− | | <small>[[#{{#arrayindex:names|0}}|#]] {{#if:{{{hide-url|}}}| [{{{hide-url}}} o]}}{{#if:{{{links|}}}| {{#arraydefine:linkArray|{{{links}}}}}{{#arrayprint:linkArray| |@@@|[@@@ {{#expr:{{#arraysearch:linkArray|@@@}} + 1}}]}}}} {{#if:{{{id|}}}||⚠ no id}}</small><!-- | + | | <small>[[#{{#arrayindex:names|0}}|#]] {{#if:{{{hide-url|}}}| [{{{hide-url}}} o]}}{{#if:{{{links|}}}| {{#arraydefine:linkArray|{{{links}}}}}{{#arrayprint:linkArray| |@@@|[@@@ {{#expr:{{#arraysearch:linkArray|@@@}} + 1}}]}}}} {{#ifexpr:{{#arraysize:ids}} = 0|⚠ no id}}</small><!-- |
| | | |
| machine-readable metadata (this must be HTML elements because we don't have Scribunto's attribute formatting) | | machine-readable metadata (this must be HTML elements because we don't have Scribunto's attribute formatting) |
| --><div class="mod-metadata" style="display: none;"> | | --><div class="mod-metadata" style="display: none;"> |
| <div class="mod-anchor">{{anchorencode:{{#arrayindex:names|0}}}}</div> | | <div class="mod-anchor">{{anchorencode:{{#arrayindex:names|0}}}}</div> |
− | <div class="mod-id">{{#if:{{{id|}}}{{{old ids|}}}|{{#ifeq:{{{id}}}|none||{{{id}}}{{#if:{{{old ids|}}}|,}}}}{{{old ids|}}}}}</div> | + | <div class="mod-id">{{#arrayprint:ids|,|@@@|@@@}}</div> |
| <div class="mod-url">{{#tag:nowiki|{{#if:{{{nexus id|}}}|{{nexus mod|{{{nexus id}}}}}|{{#if:{{{cf id|}}}|https://community.playstarbound.com/resources/{{urlencode:{{{cf id}}}}}|{{{url|}}}}}}}}}</div> | | <div class="mod-url">{{#tag:nowiki|{{#if:{{{nexus id|}}}|{{nexus mod|{{{nexus id}}}}}|{{#if:{{{cf id|}}}|https://community.playstarbound.com/resources/{{urlencode:{{{cf id}}}}}|{{{url|}}}}}}}}}</div> |
| {{#if:{{{nexus id|}}}|<div class="mod-nexus-id">{{{nexus id|}}}</div>}} | | {{#if:{{{nexus id|}}}|<div class="mod-nexus-id">{{{nexus id|}}}</div>}} |
Line 188: |
Line 189: |
| |- | | |- |
| | <code>id</code> | | | <code>id</code> |
− | | The latest unique mod ID, as listed in its <tt>manifest.json</tt> file. In rare cases where there are parallel current releases with different IDs, this can be comma-delimited. For very old mods with no ID, use <tt>none</tt> to disable validation checks. | + | | The unique mod ID, as listed in its <tt>manifest.json</tt> file. Delimit alternate/older IDs with commas (ideally in latest to oldest order). For very old mods with no ID, use <tt>none</tt> to disable validation checks. |
| |- | | |- |
| | <code>nexus id</code> | | | <code>nexus id</code> |
Line 217: |
Line 218: |
| | <code>unofficial version</code> | | | <code>unofficial version</code> |
| | The unofficial update's version number, if any. | | | The unofficial update's version number, if any. |
− | |-
| |
− | | <code>old ids</code>
| |
− | | IDs which identify older versions of this mod.
| |
| |- | | |- |
| | <code>cf id</code> | | | <code>cf id</code> |