Template:Mod List: Difference between revisions

From Modding Haven
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
<includeonly><tabber>
<includeonly><tabber>
|-|Alphabetical=
|-|Alphabetical=
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | <div class="dplcategory">}}
{{#ifexpr: {{PAGESINCAT: {{#replace:{{{1}}}|category        = |}}}} {{#if: {{{3}}}|- {{PAGESINCAT: {{#replace:{{{2}}}|notcategory      = |}}}}|}} {{#if: {{{4}}}|- {{PAGESINCAT: {{#replace:{{{3}}}|notcategory      = |}}}}|}} {{#if: {{{5}}}|- {{PAGESINCAT: {{#replace:{{{4}}}|notcategory      = |}}}}|}} {{#if: {{{6}}}|- {{PAGESINCAT: {{#replace:{{{5}}}|notcategory      = |}}}}|}} {{#if: {{{7}}}|- {{PAGESINCAT: {{#replace:{{{6}}}|notcategory      = |}}}}|}} {{#if: {{{8}}}|- {{PAGESINCAT: {{#replace:{{{7}}}|notcategory      = |}}}}|}} {{#if: {{{9}}}|- {{PAGESINCAT: {{#replace:{{{8}}}|notcategory      = |}}}}|}} {{#if: {{{10}}}|- {{PAGESINCAT: {{#replace:{{{9}}}|notcategory      = |}}}}|}} {{#if: {{{11}}}|- {{PAGESINCAT: {{#replace:{{{10}}}|notcategory      = |}}}}|}} > 6 | <div class="dplcategory">}}{{#if:{{{forceclass|}}}|<div class="dplcategory">|}}
{{#dpl:
{{#dpl:
|{{{1}}}
|{{{1}}}
Line 31: Line 31:
|format             = ,\n* [[%PAGE%|%TITLE%]] ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
|format             = ,\n* [[%PAGE%|%TITLE%]] ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
}}
}}
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | </div>}}
|-|Most Viewed=
|-|Most Viewed=
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | <div class="dplcategory">}}
{{#ifexpr: {{PAGESINCAT: {{#replace:{{{1}}}|category        = |}}}} {{#if: {{{3}}}|- {{PAGESINCAT: {{#replace:{{{2}}}|notcategory      = |}}}}|}} {{#if: {{{4}}}|- {{PAGESINCAT: {{#replace:{{{3}}}|notcategory      = |}}}}|}} {{#if: {{{5}}}|- {{PAGESINCAT: {{#replace:{{{4}}}|notcategory      = |}}}}|}} {{#if: {{{6}}}|- {{PAGESINCAT: {{#replace:{{{5}}}|notcategory      = |}}}}|}} {{#if: {{{7}}}|- {{PAGESINCAT: {{#replace:{{{6}}}|notcategory      = |}}}}|}} {{#if: {{{8}}}|- {{PAGESINCAT: {{#replace:{{{7}}}|notcategory      = |}}}}|}} {{#if: {{{9}}}|- {{PAGESINCAT: {{#replace:{{{8}}}|notcategory      = |}}}}|}} {{#if: {{{10}}}|- {{PAGESINCAT: {{#replace:{{{9}}}|notcategory      = |}}}}|}} {{#if: {{{11}}}|- {{PAGESINCAT: {{#replace:{{{10}}}|notcategory      = |}}}}|}} > 6 | <div class="dplcategory">}}{{#if:{{{forceclass|}}}|<div class="dplcategory">|}}
{{#dpl:
{{#dpl:
|{{{1}}}
|{{{1}}}
Line 65: Line 64:
|format             = ,\n# [[%PAGE%|%TITLE%]] <small>(%COUNT% views)</small> ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
|format             = ,\n# [[%PAGE%|%TITLE%]] <small>(%COUNT% views)</small> ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
}}
}}
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | </div>}}
|-|Recently Updated=
|-|Recently Updated=
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | <div class="dplcategory">}}
{{#ifexpr: {{PAGESINCAT: {{#replace:{{{1}}}|category        = |}}}} {{#if: {{{3}}}|- {{PAGESINCAT: {{#replace:{{{2}}}|notcategory      = |}}}}|}} {{#if: {{{4}}}|- {{PAGESINCAT: {{#replace:{{{3}}}|notcategory      = |}}}}|}} {{#if: {{{5}}}|- {{PAGESINCAT: {{#replace:{{{4}}}|notcategory      = |}}}}|}} {{#if: {{{6}}}|- {{PAGESINCAT: {{#replace:{{{5}}}|notcategory      = |}}}}|}} {{#if: {{{7}}}|- {{PAGESINCAT: {{#replace:{{{6}}}|notcategory      = |}}}}|}} {{#if: {{{8}}}|- {{PAGESINCAT: {{#replace:{{{7}}}|notcategory      = |}}}}|}} {{#if: {{{9}}}|- {{PAGESINCAT: {{#replace:{{{8}}}|notcategory      = |}}}}|}} {{#if: {{{10}}}|- {{PAGESINCAT: {{#replace:{{{9}}}|notcategory      = |}}}}|}} {{#if: {{{11}}}|- {{PAGESINCAT: {{#replace:{{{10}}}|notcategory      = |}}}}|}} > 6 | <div class="dplcategory">}}{{#if:{{{forceclass|}}}|<div class="dplcategory">|}}
{{#dpl:
{{#dpl:
|{{{1}}}
|{{{1}}}
Line 95: Line 93:
|{{{25}}}
|{{{25}}}
|ordermethod        = lastedit
|ordermethod        = lastedit
|minoredits          = exclude
|order              = descending
|order              = descending
|addeditdate        = true
|addeditdate        = true
Line 100: Line 99:
|format             = ,\n* [[%PAGE%|%TITLE%]] <small>(Last revision: %DATE%)</small> ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
|format             = ,\n* [[%PAGE%|%TITLE%]] <small>(Last revision: %DATE%)</small> ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
}}
}}
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | </div>}}
|-|Recently Added=
|-|Recently Added=
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | <div class="dplcategory">}}
{{#ifexpr: {{PAGESINCAT: {{#replace:{{{1}}}|category        = |}}}} {{#if: {{{3}}}|- {{PAGESINCAT: {{#replace:{{{2}}}|notcategory      = |}}}}|}} {{#if: {{{4}}}|- {{PAGESINCAT: {{#replace:{{{3}}}|notcategory      = |}}}}|}} {{#if: {{{5}}}|- {{PAGESINCAT: {{#replace:{{{4}}}|notcategory      = |}}}}|}} {{#if: {{{6}}}|- {{PAGESINCAT: {{#replace:{{{5}}}|notcategory      = |}}}}|}} {{#if: {{{7}}}|- {{PAGESINCAT: {{#replace:{{{6}}}|notcategory      = |}}}}|}} {{#if: {{{8}}}|- {{PAGESINCAT: {{#replace:{{{7}}}|notcategory      = |}}}}|}} {{#if: {{{9}}}|- {{PAGESINCAT: {{#replace:{{{8}}}|notcategory      = |}}}}|}} {{#if: {{{10}}}|- {{PAGESINCAT: {{#replace:{{{9}}}|notcategory      = |}}}}|}} {{#if: {{{11}}}|- {{PAGESINCAT: {{#replace:{{{10}}}|notcategory      = |}}}}|}} > 6 | <div class="dplcategory">}}{{#if:{{{forceclass|}}}|<div class="dplcategory">|}}
{{#dpl:
{{#dpl:
|{{{1}}}
|{{{1}}}
Line 135: Line 133:
|format             = ,\n* [[%PAGE%|%TITLE%]] <small>(Added: %DATE%)</small> ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
|format             = ,\n* [[%PAGE%|%TITLE%]] <small>(Added: %DATE%)</small> ²{#ifeq:¦²{GETSHORTDESC:%PAGE%}²¦¦ - ²{GETSHORTDESC:%PAGE%}²}²,,
}}
}}
{{#ifexpr: {{PAGESINCAT: {{PAGENAME}}}} > 100 | </div>}}
</tabber></includeonly><noinclude>
</tabber></includeonly><noinclude>
A very inefficient template for generating mod lists.
A very inefficient template for generating mod lists.
Line 141: Line 138:
Uses [[mediawikiwiki:Extension:TabberNeue|TabberNeue]] to make 4 tabs: Alphabetical, Most Viewed, Recently Updated, and Recently Added.
Uses [[mediawikiwiki:Extension:TabberNeue|TabberNeue]] to make 4 tabs: Alphabetical, Most Viewed, Recently Updated, and Recently Added.


It then checks if the current game has more than 100 mods (checking <code><nowiki>[[Category:Game name mods]]</nowiki></code> using <code><nowiki>{{PAGESINCAT: {{PAGENAME}}}}</nowiki></code>) and if so sets the class to dplcategory, which [[MediaWiki:Common.css]] will display as 2 columns. It checks 2 times per tab (div start and div end) for a total of 8 checks per usage of this template.
It then checks if the category has more than 6 mods (does this by taking the value of <code><nowiki>{{{1}}}</nowiki></code>, removing <code><nowiki>category        = </nowiki></code> dpl3 uses, and then checks if <code><nowiki>{{{3}}}</nowiki></code> exists to determine if categories are being excluded in <code><nowiki>{{{2}}}</nowiki></code> - '''Note: this could be wrong, a different dpl3 function could be used instead somewhere, things could be put out of order, or the category used could have less entries than categories excluded. Use <code>forceclass=true</code> to force a list to use dplcategory''' - and if so subtracting the number of excluded categories from the number of included categories. This gets checked all the way to <code><nowiki>#if: {{{11}}}</nowiki></code>, or the 9 subtracted categories) and if so sets the class to dplcategory, which [[MediaWiki:Common.css]] will display as 2 columns. It checks 1 times per tab for a total of 4 checks per usage of this template.  


In each tab it uses [[mediawikiwiki:Extension:DynamicPageList3|DynamicPageList3]] to generate a list of mods based off category entries. DPL3 doesn't allow Magic words, so use parameters to make it easier to fill in the game page/category name. 25 parameter slots just in case a lot of categories need included/excluded. Output removes <code>Game name mods/</code> from the hyperlink text (if <code>replaceintitle</code> is correctly set), and adds <code><nowiki>{{SHORTDESC}}</nowiki></code> if it exists.
In each tab it uses [[mediawikiwiki:Extension:DynamicPageList3|DynamicPageList3]] to generate a list of mods based off category entries. DPL3 doesn't allow Magic words, so use parameters to make it easier to fill in the game page/category name. 25 parameter slots just in case a lot of categories need included/excluded. Output removes <code>Game name mods/</code> from the hyperlink text (if <code>replaceintitle</code> is correctly set), and adds <code><nowiki>{{SHORTDESC}}</nowiki></code> if it exists.
Line 149: Line 146:
Most Viewed: Ordered by view count, descending. Include <code>%COUNT%</code> in the display.
Most Viewed: Ordered by view count, descending. Include <code>%COUNT%</code> in the display.


Recently Updated: Ordered by last edit, descending. Include <code>%DATE%</code> in the display. This unfortunately includes minor edits as using <code>minoredits = exclude</code> to change the sorting doesn't change <code>%DATE%</code>, so the date shown and list order would be off.
Recently Updated: Ordered by last edit, excluding minor edits, descending. Include <code>%DATE%</code> in the display.


Recently Added: Ordered by first edit, descending.  Include <code>%DATE%</code> in the display.
Recently Added: Ordered by first edit, descending.  Include <code>%DATE%</code> in the display.
</noinclude>
</noinclude>

Latest revision as of 20:12, 8 March 2024

A very inefficient template for generating mod lists.

Uses TabberNeue to make 4 tabs: Alphabetical, Most Viewed, Recently Updated, and Recently Added.

It then checks if the category has more than 6 mods (does this by taking the value of {{{1}}}, removing category = dpl3 uses, and then checks if {{{3}}} exists to determine if categories are being excluded in {{{2}}} - Note: this could be wrong, a different dpl3 function could be used instead somewhere, things could be put out of order, or the category used could have less entries than categories excluded. Use forceclass=true to force a list to use dplcategory - and if so subtracting the number of excluded categories from the number of included categories. This gets checked all the way to #if: {{{11}}}, or the 9 subtracted categories) and if so sets the class to dplcategory, which MediaWiki:Common.css will display as 2 columns. It checks 1 times per tab for a total of 4 checks per usage of this template.

In each tab it uses DynamicPageList3 to generate a list of mods based off category entries. DPL3 doesn't allow Magic words, so use parameters to make it easier to fill in the game page/category name. 25 parameter slots just in case a lot of categories need included/excluded. Output removes Game name mods/ from the hyperlink text (if replaceintitle is correctly set), and adds {{SHORTDESC}} if it exists.

Alphabetical: Ordered by page title. No extra formatting.

Most Viewed: Ordered by view count, descending. Include %COUNT% in the display.

Recently Updated: Ordered by last edit, excluding minor edits, descending. Include %DATE% in the display.

Recently Added: Ordered by first edit, descending. Include %DATE% in the display.