Module:Protection banner/doc
This is the documentation page for Module:Protection banner
![]() |
මෙම Lua module පිටු 36,000 පමණ භාවිතා වන නිසා සිදුකරන වෙනස් කිරීම් බොහෝ ස්ථානවලට බලපානු ඇත. ඔබ සිදුකිරීමට අදහස් කරන වෙනස්කම් මෙම මොඩියුලයට අදාළ /sandbox හෝ /testcases උපපිටු. එම වෙනස්කම් සිදුකිරීමට ප්රථම අදාළ සාකච්ඡා පිටුවේ ඒ පිළිබඳව සංවාදයක් ගොඩනැගීමට කාරුණික වන්න.
Transclusion count updated automatically (ප්රලේඛනය වෙතට යොමුවන්න). |
![]() | මෙම මොඩියුලයට අවශ්ය අනෙකුත් මොඩියුල මත: |
This module creates protection banners and padlock icons that are placed at the top of protected pages.
Usage[සංස්කරණය]
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.
![]() |
{{pp-meta}}
|
පූර්ණ | අර්ධ | Move |
---|---|---|---|---|
Dispute: | {{pp-dispute}} |
N/A | {{pp-move-dispute}}
| |
Vandalism: | {{pp-vandalism}} |
{{pp-move-vandalism}}
| ||
High visibility templates and images: | {{pp-template}} |
N/A | ||
User talk of blocked user: | {{pp-usertalk}} |
{{pp-semi-usertalk}} |
N/A | |
Generic (other protection): | {{pp-protected}} |
{{pp-move}}
| ||
Discussion page information: | {{permprot}} |
{{temprot}} |
N/A | |
Create protection: | {{deleted page}} |
N/A |
From wikitext[සංස්කරණය]
{{#invoke:Protection banner|main | 1 = reason | small = yes/no | action = action | date = protection date | user = username | section = talk page section name | category = no }}
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[සංස්කරණය]
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[සංස්කරණය]
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[සංස්කරණය]
The following table contains the available reasons, plus the actions for which they are available.
අක්ෂර දෝෂය: සැබෑ මොඩියුලක් නොමැත.
Errors[සංස්කරණය]
Below is a list of some of the common errors that this module can produce, and how to fix them.
Invalid protection date[සංස්කරණය]
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. "4 ඔක්තෝබර් 2023". To see a full range of valid inputs, see the #time documentation (only the first parameter, the format string, may be specified).
Invalid action[සංස්කරණය]
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[සංස්කරණය]
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[සංස්කරණය]
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[සංස්කරණය]
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.