Difference between revisions of "Template:Extension"

From WPRDC Wiki
Jump to navigation Jump to search
>Tacsipacsi
(i18n for types and licenses)
>Tacsipacsi
(move most of the CSS to subpage)
Line 4: Line 4:
| =
| =
{{#if: {{{phabricator|{{{bugzilla|}}}}}} | {{Ptag|{{{phabricator|MediaWiki-extensions-{{{bugzilla|}}}}}}}} }}
{{#if: {{{phabricator|{{{bugzilla|}}}}}} | {{Ptag|{{{phabricator|MediaWiki-extensions-{{{bugzilla|}}}}}}}} }}
<templatestyles src="Extension/styles.css" />
<table class="tpl-infobox ext-infobox ext-status-{{#switch: {{lc: {{{status|unknown}}} }}
<table class="tpl-infobox ext-infobox ext-status-{{#switch: {{lc: {{{status|unknown}}} }}
|unmaintained|archive|milestone|unstable|experimental|beta|stable|magic={{lc: {{{status}}} }}
|unmaintained|archive|milestone|unstable|experimental|beta|stable|magic={{lc: {{{status}}} }}
|#default=unknown
|#default=unknown
}}" style="float:{{dir|{{pagelang}}|left|right}}; clear:{{dir|{{pagelang}}|left|right}}; margin:{{dir|{{pagelang}}|0 0.5em 0.5em 0|0 0 0.5em 0.5em}}" cellspacing="0">
}}">
<caption>'''{{ll|Manual:Extensions|<translate><!--T:1--> MediaWiki extensions manual</translate>}}'''</caption>
<caption>'''{{ll|Manual:Extensions|<translate><!--T:1--> MediaWiki extensions manual</translate>}}'''</caption>
<tr class="tpl-infobox-header ext-infobox-header" style="text-align:{{dir|{{pagelang}}|right|left}}">
<tr class="tpl-infobox-header ext-infobox-header">
<th colspan="2" style="padding-top: 0.5em;">[[File:{{#ifeq: {{lc: {{{status|}}} }} |unstable|OOjs_UI_icon_alert-invert.svg|<!--else-->OOjs UI icon advanced.svg}}|link=Special:MyLanguage/Template:Extension#Content|{{dir|{{pagelang}}|right|left}}|40px]] <span style="font-size: 130%; line-height: 100%;">{{{name|{{IfNotTranslation|{{PAGENAME}}|{{BASEPAGENAME}}}}}}}</span><br />
<th colspan="2" style="padding-top: 0.5em;">[[File:{{#ifeq: {{lc: {{{status|}}} }} |unstable|OOjs_UI_icon_alert-invert.svg|<!--else-->OOjs UI icon advanced.svg}}|link=Special:MyLanguage/Template:Extension#Content|{{dir|{{pagelang}}|right|left}}|40px]] <span style="font-size: 130%; line-height: 100%;">{{{name|{{IfNotTranslation|{{PAGENAME}}|{{BASEPAGENAME}}}}}}}</span><br />
{{ll|Extension status|<translate><!--T:2--> Release status:</translate>}} {{#switch: {{lc: {{{status|unknown}}} }}
{{ll|Extension status|<translate><!--T:2--> Release status:</translate>}} {{#switch: {{lc: {{{status|unknown}}} }}
Line 40: Line 41:
{{#if:{{{type|}}}{{{type1|}}}|
{{#if:{{{type|}}}{{{type1|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#type|'''<translate><!--T:12--> Implementation</translate>'''}}</td>
<td>{{ll|Template:Extension#type|'''<translate><!--T:12--> Implementation</translate>'''}}</td>
<td>{{#invoke:Extension|getTypes
<td>{{#invoke:Extension|getTypes
  |ajax            = <translate>[[w:AJAX|Ajax]]</translate>
  |ajax            = <translate>[[w:AJAX|Ajax]]</translate>
Line 83: Line 84:
{{#if:{{{description|}}}|
{{#if:{{{description|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#description|'''<translate><!--T:13--> Description</translate>'''}}</td>
<td>{{ll|Template:Extension#description|'''<translate><!--T:13--> Description</translate>'''}}</td>
<td>{{{description}}}</td>
<td>{{{description}}}</td>
</tr>
</tr>
Line 89: Line 90:
{{#if:{{{author|}}}{{{username|}}} |
{{#if:{{{author|}}}{{{username|}}} |
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#username|'''<translate><!--T:14--> Author(s)</translate>'''}}</td>
<td>{{ll|Template:Extension#username|'''<translate><!--T:14--> Author(s)</translate>'''}}</td>
<td>{{#if: {{{username|}}} |<!--
<td>{{#if: {{{username|}}} |<!--
       -->{{#ifeq: {{{username}}}|{{{author|{{{username}}}<!-- -->}}}|<!--
       -->{{#ifeq: {{{username}}}|{{{author|{{{username}}}<!-- -->}}}|<!--
Line 110: Line 111:
{{#if:{{{maintainer|}}} |
{{#if:{{{maintainer|}}} |
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#maintainer|'''<translate><!--T:46--> Maintainer(s)</translate>'''}}</td>
<td>{{ll|Template:Extension#maintainer|'''<translate><!--T:46--> Maintainer(s)</translate>'''}}</td>
<td>{{#ifexist:User:{{{maintainer}}}|[[User:{{{maintainer}}}]]<sup>[[User talk:{{{maintainer}}}|{{int:talkpagelinktext}}]]</sup>|{{{maintainer}}}}}</td>
<td>{{#ifexist:User:{{{maintainer}}}|[[User:{{{maintainer}}}]]<sup>[[User talk:{{{maintainer}}}|{{int:talkpagelinktext}}]]</sup>|{{{maintainer}}}}}</td>
</tr>
</tr>
Line 116: Line 117:
{{#if:{{#invoke:extension|getVersion|{{{latest release version|{{{latest_release_version|{{{version|}}}}}}}}}}}|
{{#if:{{#invoke:extension|getVersion|{{{latest release version|{{{latest_release_version|{{{version|}}}}}}}}}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#version|'''<translate><!--T:15--> Latest version</translate>'''}}</td>
<td>{{ll|Template:Extension#version|'''<translate><!--T:15--> Latest version</translate>'''}}</td>
<td>{{#invoke:extension|getVersion|{{{latest release version|{{{latest_release_version|{{{version|}}}}}}}}}}}{{#if:{{{latest release date|{{{latest_release_date|{{{update|}}}}}}}}}|&#160;({{{latest release date|{{{latest_release_date|{{{update}}})}}}}}}}}</td>
<td>{{#invoke:extension|getVersion|{{{latest release version|{{{latest_release_version|{{{version|}}}}}}}}}}}{{#if:{{{latest release date|{{{latest_release_date|{{{update|}}}}}}}}}|&#160;({{{latest release date|{{{latest_release_date|{{{update}}})}}}}}}}}</td>
</tr>
</tr>
Line 122: Line 123:
{{#if:{{{latest preview version|{{{latest_peview_version|{{{version_preview|{{{version preview|}}}}}}}}}}}}|
{{#if:{{{latest preview version|{{{latest_peview_version|{{{version_preview|{{{version preview|}}}}}}}}}}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#version|'''<translate><!--T:16--> Latest preview version</translate>'''}}</td>
<td>{{ll|Template:Extension#version|'''<translate><!--T:16--> Latest preview version</translate>'''}}</td>
<td>{{{latest preview version|{{{latest_preview_version|{{{version_preview|{{{version preview|}}}}}}}}}}}}{{#if:{{{latest preview version|{{{latest_preview_version|{{{update_preview|{{{update preview|}}}}}}}}}}}}|&#160;({{{latest preview version|{{{latest_preview_version|{{{update_preview|{{{update preview}}}}}}}}}}}})}}</td>
<td>{{{latest preview version|{{{latest_preview_version|{{{version_preview|{{{version preview|}}}}}}}}}}}}{{#if:{{{latest preview version|{{{latest_preview_version|{{{update_preview|{{{update preview|}}}}}}}}}}}}|&#160;({{{latest preview version|{{{latest_preview_version|{{{update_preview|{{{update preview}}}}}}}}}}}})}}</td>
</tr>
</tr>
Line 128: Line 129:
{{#if:{{{compatibility policy|}}}|
{{#if:{{{compatibility policy|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Compatibility#mediawiki_extensions|'''<translate><!--T:43--> Compatibility policy</translate>'''}}</td>
<td>{{ll|Compatibility#mediawiki_extensions|'''<translate><!--T:43--> Compatibility policy</translate>'''}}</td>
<td>{{#switch:{{{compatibility policy}}}<!--
<td>{{#switch:{{{compatibility policy}}}<!--
       -->|master=<translate><!--T:44--> master</translate><!--
       -->|master=<translate><!--T:44--> master</translate><!--
Line 139: Line 140:
{{#if:{{{mediawiki|}}}|
{{#if:{{{mediawiki|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#mediawiki|'''MediaWiki'''}}</td>
<td>{{ll|Template:Extension#mediawiki|'''MediaWiki'''}}</td>
<td>{{{mediawiki}}}</td>
<td>{{{mediawiki}}}</td>
</tr>
</tr>
Line 145: Line 146:
{{#if:{{{php|}}}|
{{#if:{{{php|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#php|'''PHP'''}}</td>
<td>{{ll|Template:Extension#php|'''PHP'''}}</td>
<td>{{{php}}}</td>
<td>{{{php}}}</td>
</tr>
</tr>
Line 151: Line 152:
{{#if:{{{needs-updatephp|{{#invoke:Extension|getNeedsUpdates}}}}}|
{{#if:{{{needs-updatephp|{{#invoke:Extension|getNeedsUpdates}}}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#needs-updatephp|2=<abbr title="<translate><!--T:17--> <tvar|com>'php update.php'</> needed after installation</translate>" style="white-space:nowrap;">'''<translate><!--T:18--> Database changes</translate>'''</abbr>}}</td>
<td>{{ll|Template:Extension#needs-updatephp|2=<abbr title="<translate><!--T:17--> <tvar|com>'php update.php'</> needed after installation</translate>">'''<translate><!--T:18--> Database changes</translate>'''</abbr>}}</td>
<td>{{#switch:{{{needs-updatephp|{{#invoke:Extension|getNeedsUpdates}}}}}|yes|Yes=<translate><!--T:38--> Yes</translate>|no|No=<translate><!--T:39--> No</translate>|{{{needs-updatephp|{{#invoke:Extension|getNeedsUpdates}}}}}}}</td>
<td>{{#switch:{{{needs-updatephp|{{#invoke:Extension|getNeedsUpdates}}}}}|yes|Yes=<translate><!--T:38--> Yes</translate>|no|No=<translate><!--T:39--> No</translate>|{{{needs-updatephp|{{#invoke:Extension|getNeedsUpdates}}}}}}}</td>
</tr>
</tr>
Line 157: Line 158:
{{#if:{{{composer|}}}|
{{#if:{{{composer|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Composer|2=<abbr title="<translate><!--T:19--> Supports 'Composer' for installation</translate>">'''Composer'''</abbr>}}</td>
<td>{{ll|Composer|2=<abbr title="<translate><!--T:19--> Supports 'Composer' for installation</translate>">'''Composer'''</abbr>}}</td>
<td>[https://packagist.org/packages/{{{composer}}} {{{composer}}}] {{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!-- do nothing -->|<!--else-->{{#if:{{{composer|}}}|[[Category:Extensions supporting Composer{{#translation:}}]]|}} }}</td>
<td>[https://packagist.org/packages/{{{composer}}} {{{composer}}}] {{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!-- do nothing -->|<!--else-->{{#if:{{{composer|}}}|[[Category:Extensions supporting Composer{{#translation:}}]]|}} }}</td>
</tr>
</tr>
Line 163: Line 164:
{{#if:{{{table1|}}}|
{{#if:{{{table1|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#table1|'''<translate><!--T:20--> Tables</translate>'''}}</td>
<td>{{ll|Template:Extension#table1|'''<translate><!--T:20--> Tables</translate>'''}}</td>
<td>{{ll|{{translatable}}/{{{table1}}} table|{{{table1}}}}}<!--
<td>{{ll|{{translatable}}/{{{table1}}} table|{{{table1}}}}}<!--
-->{{#if:{{{table2|}}}|<br />{{ll|{{translatable}}/{{{table2}}} table|{{{table2}}}}}<!-- -->}}<!--
-->{{#if:{{{table2|}}}|<br />{{ll|{{translatable}}/{{{table2}}} table|{{{table2}}}}}<!-- -->}}<!--
Line 177: Line 178:
}}
}}
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#license|'''<translate><!--T:21--> License</translate>'''}}</td>
<td>{{ll|Template:Extension#license|'''<translate><!--T:21--> License</translate>'''}}</td>
<td>{{#if:{{{license|}}}|{{#invoke:Extension|getFormattedLicense|{{{license}}}
<td>{{#if:{{{license|}}}|{{#invoke:Extension|getFormattedLicense|{{{license}}}
  |GPL-2.0      = <translate>GNU General Public License 2.0</translate>
  |GPL-2.0      = <translate>GNU General Public License 2.0</translate>
Line 217: Line 218:
}}|<translate><!--T:22--> No license specified</translate> {{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!-- do nothing -->|<!--else-->[[Category:Extensions with no license specified{{#translation:}}]]}}}}</td>
}}|<translate><!--T:22--> No license specified</translate> {{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!-- do nothing -->|<!--else-->[[Category:Extensions with no license specified{{#translation:}}]]}}}}</td>
</tr><tr>
</tr><tr>
<td style="vertical-align: top">'''<translate><!--T:23--> Download</translate>'''</td>
<td>'''<translate><!--T:23--> Download</translate>'''</td>
<td><!--
<td><!--
-->{{#if:{{{download|}}}|{{{download}}}|''<translate><!--T:24--> No link</translate>''}}<!--
-->{{#if:{{{download|}}}|{{{download}}}|''<translate><!--T:24--> No link</translate>''}}<!--
Line 225: Line 226:
{{#if:{{{example|}}}|
{{#if:{{{example|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#example|'''<translate><!--T:25--> Example</translate>'''}}</td>
<td>{{ll|Template:Extension#example|'''<translate><!--T:25--> Example</translate>'''}}</td>
<td>{{{example}}}</td>
<td>{{{example}}}</td>
</tr>
</tr>
Line 231: Line 232:
{{#if:{{{namespace|}}}|
{{#if:{{{namespace|}}}|
<tr>
<tr>
<td style="vertical-align: top">{{ll|Template:Extension#namespace|'''<translate><!--T:26--> Namespace</translate>'''}}</td>
<td>{{ll|Template:Extension#namespace|'''<translate><!--T:26--> Namespace</translate>'''}}</td>
<td><!-- the parameter "namespace" should begin on its own line so that bullet lists are correctly recognised by MediaWiki -->
<td><!-- the parameter "namespace" should begin on its own line so that bullet lists are correctly recognised by MediaWiki -->
{{{namespace|}}}</td>
{{{namespace|}}}</td>
Line 238: Line 239:
{{#if:{{{parameters|}}}|
{{#if:{{{parameters|}}}|
<tr>
<tr>
<td style="padding: 0pt;" colspan="2"><!--
<td class="mw-collapsible mw-collapsed" colspan="2">
  -->
<div class="mw-collapsible-header">{{ll|Template:Extension#parameters|<translate><!--T:27--> Parameters</translate>}}</div>
<table class="mw-collapsible mw-collapsed" style="border-collapse: collapse; width: 100%;">
<div class="mw-collapsible-content"><!-- the parameter "parameters" should begin on its own line so that bullet lists are correctly recognised by MediaWiki -->
<tr>
{{{parameters}}}</div></td>
<th style="vertical-align:top; text-align:{{dir|{{pagelang}}|right|left}}; padding:0.2em 0.5em">{{ll|Template:Extension#parameters|<translate><!--T:27--> Parameters</translate>}}</th>
</tr><tr>
<td><!-- the parameter "parameters" should begin on its own line so that bullet lists are correctly recognised by MediaWiki -->
{{{parameters}}}</td>
</tr>
</table></td>
</tr>
</tr>
}}
}}
{{#if:{{{tags|}}}|
{{#if:{{{tags|}}}|
<tr>
<tr>
<td style="padding: 0pt;" colspan="2">
<td class="mw-collapsible mw-collapsed" colspan="2">
<table class="mw-collapsible mw-collapsed" style="border-collapse: collapse; width: 100%;">
<div class="mw-collapsible-header">{{ll|Template:Extension#tags|<translate><!--T:28--> Tags</translate>}}</div>
<tr>
<div class="mw-collapsible-content">{{{tags}}}</div></td>
<th style="vertical-align:top; text-align:{{dir|{{pagelang}}|right|left}}; padding:0.2em 0.5em">{{ll|Template:Extension#tags|<translate><!--T:28--> Tags</translate>}}</th>
</tr><tr>
<td>{{{tags}}}</td>
</tr>
</table></td>
</tr>
</tr>
}}
}}
{{#if:{{{rights|}}}|
{{#if:{{{rights|}}}|
<tr>
<tr>
<td style="padding: 0pt;" colspan="2">
<td class="mw-collapsible mw-collapsed" colspan="2">
<table class="mw-collapsible mw-collapsed" style="border-collapse: collapse; width: 100%;">
<div class="mw-collapsible-header">{{ll|Template:Extension#rights|<translate><!--T:29--> Added rights</translate>}}</div>
<tr>
<div class="mw-collapsible-content"><!-- the parameter "rights" should begin on its own line so that bullet lists are correctly recognised by MediaWiki -->
<th style="vertical-align:top; text-align:{{dir|{{pagelang}}|right|left}}; padding:0.2em 0.5em">{{ll|Template:Extension#rights|<translate><!--T:29--> Added rights</translate>}}</th>
</tr><tr>
<td><!-- the parameter "rights" should begin on its own line so that bullet lists are correctly recognised by MediaWiki -->
{{{rights}}}
{{{rights}}}
{{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!-- do nothing -->|<!--else-->{{#if:{{{rights|}}}|[[Category:Extensions which add rights{{#translation:}}]]|}} }}</td>
{{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!-- do nothing -->|<!--else-->{{#if:{{{rights|}}}|[[Category:Extensions which add rights{{#translation:}}]]|}} }}</div></td>
</tr>
</table></td>
</tr>
</tr>
}}
}}
{{#if:{{{service1|}}}|
{{#if:{{{service1|}}}|
<tr>
<tr>
<td style="padding: 0pt;" colspan="2">
<td class="mw-collapsible mw-collapsed" colspan="2">
<table class="mw-collapsible mw-collapsed" style="border-collapse: collapse; width: 100%;">
<div class="mw-collapsible-header">{{ll|Template:Extension#service|Services defined}}</div>
<tr>
<div class="mw-collapsible-content">
<th style="vertical-align:top; text-align:{{dir|{{pagelang}}|right|left}}; padding:0.2em 0.5em">{{ll|Template:Extension#service|Services defined}}</th>
<div>{{{service1|}}}[[Category:Extensions defining a service|{{PAGENAME}}]]</div>
</tr><tr>
{{#if:{{{service2|}}}|<div>{{{service2|}}}</div>}}
<td>{{{service1|}}}[[Category:Extensions defining a service|{{PAGENAME}}]]</td>
</div></td>
</tr>
{{#if:{{{service2|}}}|
<tr>
<td>{{{service2|}}}</td>
</tr>
}}
</table></td>
</tr>
</tr>
}}
}}
{{#if:{{{hook1|}}}|
{{#if:{{{hook1|}}}|
<tr>
<tr>
<td style="padding: 0pt;" colspan="2">
<td class="mw-collapsible mw-collapsed" colspan="2">
<table class="mw-collapsible mw-collapsed" style="border-collapse: collapse; width: 100%;">
<div class="mw-collapsible-header">{{ll|Template:Extension#hook|<translate><!--T:30--> Hooks used</translate>}}</div>
<tr>
<div class="mw-collapsible-content plainlist"><ul><li><!--
<th style="vertical-align:top; text-align:{{dir|{{pagelang}}|right|left}}; padding:0.2em 0.5em">{{ll|Template:Extension#hook|<translate><!--T:30--> Hooks used</translate>}}</th>
</tr><tr>
<td><!--
       -->{{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!--
       -->{{#ifeq:{{{templatemode|<noinclude>nocats</noinclude>}}}|nocats|<!--
         -->{{Foreach|Extension/HookInUseNoCats|delim=<br/>|<!--
         -->{{Foreach|Extension/HookInUseNoCats|delim=</li><li>|<!--
             -->{{{hook1}}}|{{{hook2|}}}|{{{hook3|}}}|{{{hook4|}}}|{{{hook5|}}}|{{{hook6|}}}|<!--
             -->{{{hook1}}}|{{{hook2|}}}|{{{hook3|}}}|{{{hook4|}}}|{{{hook5|}}}|{{{hook6|}}}|<!--
             -->{{{hook7|}}}|{{{hook8|}}}|{{{hook9|}}}|{{{hook10|}}}|{{{hook11|}}}|{{{hook12|}}}|<!--
             -->{{{hook7|}}}|{{{hook8|}}}|{{{hook9|}}}|{{{hook10|}}}|{{{hook11|}}}|{{{hook12|}}}|<!--
Line 313: Line 288:
         -->}}<!--
         -->}}<!--
       -->|<!--else--><!--
       -->|<!--else--><!--
         -->{{Foreach|Extension/HookInUse|delim=<br/>|<!--
         -->{{Foreach|Extension/HookInUse|delim=</li><li>|<!--
             -->{{{hook1}}}|{{{hook2|}}}|{{{hook3|}}}|{{{hook4|}}}|{{{hook5|}}}|{{{hook6|}}}|<!--
             -->{{{hook1}}}|{{{hook2|}}}|{{{hook3|}}}|{{{hook4|}}}|{{{hook5|}}}|{{{hook6|}}}|<!--
             -->{{{hook7|}}}|{{{hook8|}}}|{{{hook9|}}}|{{{hook10|}}}|{{{hook11|}}}|{{{hook12|}}}|<!--
             -->{{{hook7|}}}|{{{hook8|}}}|{{{hook9|}}}|{{{hook10|}}}|{{{hook11|}}}|{{{hook12|}}}|<!--
Line 324: Line 299:
         -->}}<!--
         -->}}<!--
       -->}}<!--
       -->}}<!--
   --></td>
   --></li></ul></div>
</tr>
</td>
</table></td>
</tr>
</tr>
}}
}}
{{#if:{{{newhook1|}}}|
{{#if:{{{newhook1|}}}|
<tr>
<tr>
<td style="padding: 0pt;" colspan="2">
<td class="mw-collapsible mw-collapsed" colspan="2">
<table class="mw-collapsible mw-collapsed" style="border-collapse: collapse; width: 100%;">
<div class="mw-collapsible-header">{{ll|Template:Extension#newhook|<translate><!--T:31--> Hooks provided</translate>}}</div>
<tr>
<div class="mw-collapsible-content plainlist"><ul><li><!--
<th style="vertical-align:top; text-align:{{dir|{{pagelang}}|right|left}}; padding:0.2em 0.5em">{{ll|Template:Extension#newhook|<translate><!--T:31--> Hooks provided</translate>}}</th>
       -->{{Foreach|Extension/HookProvided|delim=</li><li>|<!--
</tr><tr>
<td><!--
       -->{{Foreach|Extension/HookProvided|delim=<br/>|<!--
         -->{{{newhook1}}}|{{{newhook2|}}}|{{{newhook3|}}}|{{{newhook4|}}}|{{{newhook5|}}}|{{{newhook6|}}}|<!--
         -->{{{newhook1}}}|{{{newhook2|}}}|{{{newhook3|}}}|{{{newhook4|}}}|{{{newhook5|}}}|{{{newhook6|}}}|<!--
         -->{{{newhook7|}}}|{{{newhook8|}}}|{{{newhook9|}}}|{{{newhook10|}}}|{{{newhook11|}}}|{{{newhook12|}}}|<!--
         -->{{{newhook7|}}}|{{{newhook8|}}}|{{{newhook9|}}}|{{{newhook10|}}}|{{{newhook11|}}}|{{{newhook12|}}}|<!--
Line 347: Line 318:
         -->{{{newhook43|}}}|{{{newhook44|}}}|{{{newhook45|}}}|{{{newhook46|}}}|{{{newhook47|}}}|{{{newhook48|}}}<!--
         -->{{{newhook43|}}}|{{{newhook44|}}}|{{{newhook45|}}}|{{{newhook46|}}}|{{{newhook47|}}}|{{{newhook48|}}}<!--
       -->}}<!--
       -->}}<!--
   --></td>
   --></li></ul></div>
</tr>
</td>
</table></td>
</tr>
</tr>
}}
}}
Line 383: Line 353:
{{#if:{{{vagrant-role|}}} |
{{#if:{{{vagrant-role|}}} |
<tr>
<tr>
<td style="vertical-align:top; text-align:{{dir|{{pagelang}}|right|left}}; padding:0.2em 0.5em">{{ll|MediaWiki-Vagrant#Using roles|'''<translate><!--T:34--> Vagrant role</translate>'''}}</td>
<td>{{ll|MediaWiki-Vagrant#Using roles|'''<translate><!--T:34--> Vagrant role</translate>'''}}</td>
<td>[https://doc.wikimedia.org/mediawiki-vagrant/puppet_classes/role_3A_3A{{{vagrant-role}}}.html {{{vagrant-role}}}]</td>
<td>[https://doc.wikimedia.org/mediawiki-vagrant/puppet_classes/role_3A_3A{{{vagrant-role}}}.html {{{vagrant-role}}}]</td>
</tr>
</tr>
Line 389: Line 359:
{{#if: {{{phabricator|{{{bugzilla|}}}}}} |
{{#if: {{{phabricator|{{{bugzilla|}}}}}} |
<tr>
<tr>
<td style="vertical-align: top">
<td>
'''{{ll|Phabricator|<translate><!--T:35--> Issues</translate>}}'''</td>
'''{{ll|Phabricator|<translate><!--T:35--> Issues</translate>}}'''</td>
<td>[[phab:tag/{{lc:{{{phabricator|MediaWiki-extensions-{{{bugzilla}}}}}}}}|<translate><!--T:36--> Open tasks</translate>]] · [https://phabricator.wikimedia.org/maniphest/task/create/?projects={{{phabricator|MediaWiki-extensions-{{{bugzilla}}}}}} <translate><!--T:37--> Report a bug</translate>]</td>
<td>[[phab:tag/{{lc:{{{phabricator|MediaWiki-extensions-{{{bugzilla}}}}}}}}|<translate><!--T:36--> Open tasks</translate>]] · [https://phabricator.wikimedia.org/maniphest/task/create/?projects={{{phabricator|MediaWiki-extensions-{{{bugzilla}}}}}} <translate><!--T:37--> Report a bug</translate>]</td>
Line 397: Line 367:
{{#if: {{{github|}}} |
{{#if: {{{github|}}} |
<tr>
<tr>
<td style="vertical-align: top">
<td>
'''{{ll|Gerrit/GitHub|<translate><!--T:40--> Issues</translate>}}'''</td>
'''{{ll|Gerrit/GitHub|<translate><!--T:40--> Issues</translate>}}'''</td>
<td>[https://www.github.com/{{{github}}}/issues <translate><!--T:41--> Open issues</translate>] · [https://www.github.com/{{{github}}}/issues/new <translate><!--T:42--> Report a bug</translate>]</td>
<td>[https://www.github.com/{{{github}}}/issues <translate><!--T:41--> Open issues</translate>] · [https://www.github.com/{{{github}}}/issues/new <translate><!--T:42--> Report a bug</translate>]</td>
Line 527: Line 497:
</tr>
</tr>
</table>
</table>
<br style="clear:both"/>


{{anchor|Content parameters}}
{{anchor|Content parameters}}
Line 571: Line 540:
The  implementation strategy(s) employed in building this extension. This parameter is used to create categories that help programmers find examples of various MediaWiki specific implementation strategies or patterns. Although the values of this parameter sometimes coincide with the use case or purpose of an extension, that is not reason for this parameter. If the values you have chosen for this parameter do not adequately identify the [[w:Requirements|purpose]] or possible [[w:Use case|use case]]s, we recommend you add additional [[Help:Categories|category links]] as needed.
The  implementation strategy(s) employed in building this extension. This parameter is used to create categories that help programmers find examples of various MediaWiki specific implementation strategies or patterns. Although the values of this parameter sometimes coincide with the use case or purpose of an extension, that is not reason for this parameter. If the values you have chosen for this parameter do not adequately identify the [[w:Requirements|purpose]] or possible [[w:Use case|use case]]s, we recommend you add additional [[Help:Categories|category links]] as needed.


Legal values for the '''type1''', '''type2''', ... parameters are:
Legal values for the '''type1''', '''type2''', ... parameters are:
* '''''[[:Category:Parser extensions{{#translation:}}|parser]]''''' - catchall for uncategorized [[Special:MyLanguage/Manual:Extending wiki markup|parser extensions]]. If you have written a parser extension, please use one of the following more specific types:
* '''''[[:Category:Parser extensions{{#translation:}}|parser]]''''' - catchall for uncategorized [[Special:MyLanguage/Manual:Extending wiki markup|parser extensions]]. If you have written a parser extension, please use one of the following more specific types:
** ''[[:Category:ContentHandler extensions{{#translation:}}|contenthandler]]'' - Extensions using {{ll|Manual:ContentHandler|ContentHandler}}.
** ''[[:Category:ContentHandler extensions{{#translation:}}|contenthandler]]'' - Extensions using {{ll|Manual:ContentHandler|ContentHandler}}.
Line 581: Line 550:
*:
*:
* [[:Category:User access extensions{{#translation:}}|'''''access''''']] - catchall for [[Special:MyLanguage/Manual:User access extensions|user access extensions]], that is, extensions that create, authenticate, grant permissions, revoke permissions, or monitor the activity of users. If you have written an access extension, please use one of the following more specific types:
* [[:Category:User access extensions{{#translation:}}|'''''access''''']] - catchall for [[Special:MyLanguage/Manual:User access extensions|user access extensions]], that is, extensions that create, authenticate, grant permissions, revoke permissions, or monitor the activity of users. If you have written an access extension, please use one of the following more specific types:
** [[:Category:User activity extensions{{#translation:}}|''user activity'']] - extensions that monitor user activity (logins, logouts, new user creation, etc.)
** [[:Category:User activity extensions{{#translation:}}|''user activity'']] - extensions that monitor user activity (logins, logouts, new user creation, etc.)
** [[:Category:User identity extensions{{#translation:}}|''user identity'']] - extensions that create and delete users, and/or verify the identity of a user
** [[:Category:User identity extensions{{#translation:}}|''user identity'']] - extensions that create and delete users, and/or verify the identity of a user
** [[:Category:User rights extensions{{#translation:}}|''user rights'']] - extensions to the rights management system, e.g. changes to the way rights are assigned, API, maintenance tools (does not include extensions that merely name the rights needed to use the features of that extension; for this purpose use the [[#rights|rights parameter]])
** [[:Category:User rights extensions{{#translation:}}|''user rights'']] - extensions to the rights management system, e.g. changes to the way rights are assigned, API, maintenance tools (does not include extensions that merely name the rights needed to use the features of that extension; for this purpose use the [[#rights|rights parameter]])
Line 595: Line 564:
* '''other'''
* '''other'''
** [[:Category:API extensions{{#translation:}}|''api'']] - extensions that add a new API module or extend a core API module.
** [[:Category:API extensions{{#translation:}}|''api'']] - extensions that add a new API module or extend a core API module.
** [[:Category:Hook extensions{{#translation:}}|''hook'']] - Hook extension - defines a <em>new</em> hook - see hook1, etc. below if you want to define hooks <em>used</em> by your extension
** [[:Category:Hook extensions{{#translation:}}|''hook'']] - Hook extension - defines a <em>new</em> hook - see hook1, etc. below if you want to define hooks <em>used</em> by your extension
** [[:Category:Database extensions{{#translation:}}|''database'']] - adds tables and/or fields to the database backing a MediaWiki installation
** [[:Category:Database extensions{{#translation:}}|''database'']] - adds tables and/or fields to the database backing a MediaWiki installation
** [[:Category:Data extraction extensions{{#translation:}}|''data extraction'']] - Data extraction
** [[:Category:Data extraction extensions{{#translation:}}|''data extraction'']] - Data extraction

Revision as of 15:03, 21 June 2019

<languages/> Lua error in Module:TNT at line 158: Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:I18n/Documentation.tab.[[Category:Template documentation pages{{#translation:}}]] Maintenance: vulnerabilities, archived

[[Category:Info templates{{#translation:}}|Extension]] [[Category:Extension creation{{#translation:}}]] [[Category:Categorizing templates{{#translation:}}|Extension]] [[Category:Extension templates{{#translation:}}]]