Module:Param Parse/doc: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
(yes_no) |
No edit summary |
||
Line 1:
{{documentation}}
These params and functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the
{| class="wikitable"
! param
! explanation
|-▼
| parse.image
| <nowiki>[[File:IMAGE.png]]</nowiki>. Use the class '''infobox-image''' in the table
|-▼
| Episode name
|-▼
| parse.premium
| Premium (Yes, No, N/A)
Here are some general use functions that can be used for custom or new params:
{| class="wikitable"
! function name
Line 10 ⟶ 25:
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
▲|-
▲|-
|-
| number(num)
| Removes any commas and parses the string as a number
▲|-
▲|-
▲| episode_smw(episode)
|-
| yes_no(text)
Line 31 ⟶ 34:
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
== Creating New Params ==
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
<syntaxhighlight lang="lua">
param.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
|
Revision as of 02:10, 6 April 2024
Module:Param Parse requires Module:Currency.
Module:Param Parse requires Module:Infobox.
Module:Param Parse requires strict.
Module:Param Parse is required by
.These params and functions are used to validate and format information passed into an Infobox. See Module:Infobox for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the params:
param | explanation |
---|---|
parse.image | [[File:IMAGE.png]]. Use the class infobox-image in the table |
parse.episode | Episode name |
parse.premium | Premium (Yes, No, N/A) |
Here are some general use functions that can be used for custom or new params:
function name | explanation |
---|---|
has_content(arg) | Returns arg if any non-whitespace character is found in the string. |
number(num) | Removes any commas and parses the string as a number |
yes_no(text) | Only accepts "Yes", "No" and "N/A" |
yes_no_smw(text) | Maps "Yes", "No" to true and false respectively |
Creating New Params
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
param.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
key | value | ||||
---|---|---|---|---|---|
name | parameter name as used in the Template | ||||
func | A function in Module:Param Parse to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)): {name = <param>, func = <func>, ... },
If func is a table, it takes the following parameters: {name = <param>, func = { name = <func>, params = <func_params>}, ... },
| ||||
empty (optional) | text to display in the infobox if func returns nil; defaults to "? (edit)" | ||||
category_never (optional) | category to add if func returns nil for all versions | ||||
category_partial (optional) | category to add if func returns nil for some versions, but a value for other versions | ||||
category_incomplete (optional) | category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined) | ||||
category_complete (optional) | category to add if func returns a value for all versions | ||||
smw_property (optional) | if this string is defined, the parameter will be saved into SMW | ||||
smw_func (optional) | function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined |