Modul:Protection banner/doc: Perbedaan antara revisi

Dari Wiki Javasatu
Loncat ke navigasi Loncat ke pencarian
(←Membuat halaman berisi '{{High-use| 500 }} {{Module rating|protected}} {{Lua|Module:Protection banner/config|Module:No globals|Module:File link|Module:Effective protection level|Module:Effective protection expiry|Module:Yesno|Module:Arguments|Module:Message box|Module:Vandal-m|Module:Submit an edit request|noprotcat=yes}} Modul ini digunakan untuk membuat tajuk pelindungan dan ikon gembok yang ditempatkan di atas halaman pelindungan. == Penggunaan == Tidak dapa...')
 
Tidak ada ringkasan suntingan
 
Baris 1: Baris 1:
{{High-use| 500 }}
{{High-use}}
{{Module rating|protected}}
{{Module rating|protected}}
{{Lua|Module:Protection banner/config|Module:No globals|Module:File link|Module:Effective protection level|Module:Effective protection expiry|Module:Yesno|Module:Arguments|Module:Message box|Module:Vandal-m|Module:Submit an edit request|noprotcat=yes}}
{{Lua|Module:Protection banner/config|Module:File link|Module:Effective protection level|Module:Effective protection expiry|Module:Yesno|Module:Arguments|Module:Message box|Module:Submit an edit request}}
Modul ini digunakan untuk membuat tajuk pelindungan dan ikon gembok yang ditempatkan di atas [[Bantuan:Pelindungan|halaman pelindungan]].
This module creates protection banners and padlock icons that are placed at the top of [[Help:Protection|protected pages]].


== Penggunaan ==
== Usage ==


Tidak dapat digunakan secara langsung. Templat pelindungan memerlukan templat {{tl|pp}}, atau menggunakan daftar templat di bawah
Most users will not need to use this module directly. For adding protection templates to pages you can use the {{tl|pp}} template, or you may find it more convenient to use one of the more specific protection templates in the table below.


{{templat pelindungan}}
{{protection templates}}


=== Dari teks wiki ===
=== From wikitext ===


  {{#invoke:Protection banner|main
  {{#invoke:Protection banner|main
Baris 19: Baris 19:
  | user    = ''username''
  | user    = ''username''
  | section  = ''talk page section name''
  | section  = ''talk page section name''
  | category = ''no''
  | category = ''yes''
  }}
  }}


Sintaksis #invoke digunakan untuk templat yang lebih spesifik daripada {{tl|pp}}. Misalnya, it is possible to create a protection template which always shows a padlock icon by using the code <code><nowiki>{{#invoke:Protection banner|main|small=yes}}</nowiki></code>. Pages which call this template will still be able to use other arguments, like ''action''. However, this only works one level deep; a page calling a template which calls another template containing the above code will not automatically be able to use parameters like ''action''.
The #invoke syntax can be used for creating protection templates more specific than {{tl|pp}}. For example, it is possible to create a protection template which always shows a padlock icon by using the code <code><nowiki>{{#invoke:Protection banner|main|small=yes}}</nowiki></code>. Pages which call this template will still be able to use other arguments, like ''action''. However, this only works one level deep; a page calling a template which calls another template containing the above code will not automatically be able to use parameters like ''action''.


'''''Note:''' You should no longer specify the expiry, as it is automatically retrieved in all cases.''
'''''Note:''' You should no longer specify the expiry, as it is automatically retrieved in all cases.''


=== Dari lua ===
=== From Lua ===


First, load the module.
First, load the module.
Baris 53: Baris 53:
* '''section''' – the section name of the protected page's talk page where discussion is taking place. This works for most, but not all, values of ''reason''.
* '''section''' – the section name of the protected page's talk page where discussion is taking place. This works for most, but not all, values of ''reason''.
* '''category''' – categories are suppressed if this is set to "no", "n", "0", or "false".
* '''category''' – categories are suppressed if this is set to "no", "n", "0", or "false".
* '''catonly''' – if set to "yes", "y", "1", or "true", will only return the protection categories, and not return the banner or padlock. This has no visible output.


== Reasons ==
== Reasons ==
Baris 68: Baris 69:
{{error|Error: invalid protection date ("abc")}}
{{error|Error: invalid protection date ("abc")}}


This error is produced if you supply an {{para|date}} parameter value that is not recognised as a valid date by the #time parser function. If in doubt, you can just use a date in the format "dd Month YYYY", e.g. "{{#time:j F Y|+ 1 week}}". To see a full range of valid inputs, see the [[mw:Help:Extension:ParserFunctions##time|#time documentation]] (only the first parameter, the ''format string'', may be specified).
This error is produced if you supply a {{para|date}} parameter value that is not recognised as a valid date by the #time parser function. If in doubt, you can just use a date in the format "dd Month YYYY", e.g. "{{#time:j F Y|+ 1 week}}". To see a full range of valid inputs, see the [[mw:Help:Extension:ParserFunctions##time|#time documentation]] (only the first parameter, the ''format string'', may be specified).


=== Invalid action ===
=== Invalid action ===
Baris 80: Baris 81:
{{error|Error: reasons cannot contain the pipe character ("&#124;")}}
{{error|Error: reasons cannot contain the pipe character ("&#124;")}}


Galat ini dihasilkan jika Anda memberikan alasan pada parameter {{para|1}} mengandung karakter pipa ("&#124;"). Periksa bahwa Anda tidak memasukkan templat {{tl|!}} ke parameter ini. Karakter ini dilarang karena modul ini menggunakan karakter tersebut secara internal. Alasan yang valid dapat dilihat di bagian [[#Alasan|alasan]].
This error is produced if you specify a reason using the {{para|1}} parameter that includes a pipe character ("&#124;"). Please check that you are not entering the {{tl|!}} template into this parameter by mistake. The pipe character is disallowed as the module uses it internally. A list of valid reasons can be seen in the [[#Reasons|reasons section]].


=== Galat yang lain ===
=== Other errors ===


Jika Anda melihat galat selain hal di atas, kemungkinan itu adalah kekutu atau kesalahan konfigurasi. Kirim pesan mengenai masalah ini di [[Pembicaraan Modul:Protection banner]].
If you see an error other than the ones above, it is likely to either be a bug in the module or mistake in the configuration. Please post a message about it at [[Module talk:Protection banner]].


== Detail teknis ==
== Technical details ==


Modul ini menggunakan konfigurasi [[Module:Protection banner/config]]. Kebanyakan perilaku modul, dikonfigurasi di sana sehingga sangat portabel di antara wiki dalam berbagai bahasa
This module uses configuration data from [[Module:Protection banner/config]]. Most of the module's behaviour can be configured there, making it easily portable across different wikis and different languages.


Kasus uji umum modul ini dapat dilakukan di [[Module:Protection banner/kasus uji|Modul:Protection banner/kasus uji]], dan konfigurasinya dapat dilakukan di [[Modul:Protection banner/config/testcases|Modul:Protection banner/config/kasus uji]].
General test cases for the module can be found at [[w:en:Module:Protection banner/testcases|Module:Protection banner/testcases]], and test cases specific to enwiki's config can be found at [[w:en:Module:Protection banner/config/testcases|Module:Protection banner/config/testcases]].


Masalah kekutu dan fitur baru dapat dibicarakan [[w:en:Module talk:Protection banner|di halaman pembicaraan modul ini]].
Bug reports and feature requests should be made on [[w:en:Module talk:Protection banner|the module's talk page]].
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox||
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox||
<!-- Categories go here and interwikis go in Wikidata. -->
<!-- Categories go here and interwikis go in Wikidata. -->
}}</includeonly>
}}</includeonly>

Revisi terkini sejak 22 September 2023 17.02

This module creates protection banners and padlock icons that are placed at the top of protected pages.

Usage[sunting sumber]

Most users will not need to use this module directly. For adding protection templates to pages you can use the {{pp}} template, or you may find it more convenient to use one of the more specific protection templates in the table below.


From wikitext[sunting sumber]

{{#invoke:Protection banner|main
| 1        = reason
| small    = yes/no
| action   = action
| date     = protection date
| user     = username
| section  = talk page section name
| category = yes
}}

The #invoke syntax can be used for creating protection templates more specific than {{pp}}. For example, it is possible to create a protection template which always shows a padlock icon by using the code {{#invoke:Protection banner|main|small=yes}}. Pages which call this template will still be able to use other arguments, like action. However, this only works one level deep; a page calling a template which calls another template containing the above code will not automatically be able to use parameters like action.

Note: You should no longer specify the expiry, as it is automatically retrieved in all cases.

From Lua[sunting sumber]

First, load the module.

local mProtectionBanner = require('Module:Protection banner')

Then you can make protection banners by using the _main function.

mProtectionBanner._main(args, cfg, titleObj)

args is a table of arguments to pass to the module. For possible keys and values for this table, see the parameters section. The cfg and titleObj variables are intended only for testing; cfg specifies a customised config table to use instead of Module:Protection banner/config, and titleObj specifies a mw.title object to use instead of the current title. args, cfg and titleObj are all optional.

Parameters[sunting sumber]

All parameters are optional.

  • 1 – the reason that the page was protected. If set, this must be one of the values listed in the reasons table.
  • small – if set to "yes", "y", "1", or "true", a padlock icon is generated instead of a full protection banner.
  • action – the protection action. Must be one of "edit" (for normal protection), "move" (for move-protection) or "autoreview" (for pending changes). The default value is "edit".
  • date – the protection date. This must be valid input to the second parameter of the #time parser function. This argument has an effect for reasons that use the PROTECTIONDATE parameter in their configuration. As of July 2014, those were the "office" and "reset" reasons.
  • user – the username of the user to generate links for. As of July 2014, this only has an effect when the "usertalk" reason is specified.
  • section – the section name of the protected page's talk page where discussion is taking place. This works for most, but not all, values of reason.
  • category – categories are suppressed if this is set to "no", "n", "0", or "false".
  • catonly – if set to "yes", "y", "1", or "true", will only return the protection categories, and not return the banner or padlock. This has no visible output.

Reasons[sunting sumber]

The following table contains the available reasons, plus the actions for which they are available.

Lua error in package.lua at line 80: module 'Module:Protection banner/documentation/config' not found.

Errors[sunting sumber]

Below is a list of some of the common errors that this module can produce, and how to fix them.

Invalid protection date[sunting sumber]

Error: invalid protection date ("abc")

This error is produced if you supply a |date= parameter value that is not recognised as a valid date by the #time parser function. If in doubt, you can just use a date in the format "dd Month YYYY", e.g. "18 Desember 2025". To see a full range of valid inputs, see the #time documentation (only the first parameter, the format string, may be specified).

Invalid action[sunting sumber]

Error: invalid action ("abc")

This error is produced if you specify an invalid protection action. There are only three valid actions: edit (the default, for normal protection), move (for move-protection), and autoreview (for pending changes). This should only be possible if you are using a template that supports manually specifying the protection action, such as {{pp}}, or if you are using #invoke directly. If this is not the case, please leave a message on Module talk:Protection banner.

Reasons cannot contain the pipe character[sunting sumber]

Error: reasons cannot contain the pipe character ("|")

This error is produced if you specify a reason using the |1= parameter that includes a pipe character ("|"). Please check that you are not entering the {{!}} template into this parameter by mistake. The pipe character is disallowed as the module uses it internally. A list of valid reasons can be seen in the reasons section.

Other errors[sunting sumber]

If you see an error other than the ones above, it is likely to either be a bug in the module or mistake in the configuration. Please post a message about it at Module talk:Protection banner.

Technical details[sunting sumber]

This module uses configuration data from Module:Protection banner/config. Most of the module's behaviour can be configured there, making it easily portable across different wikis and different languages.

General test cases for the module can be found at Module:Protection banner/testcases, and test cases specific to enwiki's config can be found at Module:Protection banner/config/testcases.

Bug reports and feature requests should be made on the module's talk page.