This is the documentation page for Module:Message box
<languages />
Warning | This Lua module is used in system messages, and on approximately 18,900,000 pages, or roughly 2680851% of all pages. Changes to it can cause immediate changes to the Wikipedia user interface. To avoid major disruption and server load, any changes should be tested in the module's /sandbox or /testcases subpages, or in your own module sandbox. The tested changes can be added to this page in a single edit. Please discuss changes on the talk page before implementing them. |
File:Lua-Logo.svg | This module depends on the following other modules: |
CSS | This module uses TemplateStyles: |
This is a meta-module that implements the message box templates {{mbox}}
, {{ambox}}
, {{cmbox}}
, {{fmbox}}
, {{imbox}}
, {{ombox}}
and {{tmbox}}
.
It is intended to be used from Lua modules, and should not be used directly from wiki pages.
If you want to use this module's functionality from a wiki page, please use the individual message box templates instead.
Usage
To use this module from another Lua module, first you need to load it.
local messageBox = require('Module:Message box')
To create a message box, use the main
function.
It takes two parameters:
- the first is the box type (as a string).
- the second is a table containing the message box parameters.
local box = messageBox.main( boxType, {
param1 = param1,
param2 = param2,
-- More parameters...
})
There are seven available box types:
Box type | Template | Purpose |
---|---|---|
mbox
|
{{mbox}}
|
For message boxes to be used in multiple namespaces |
ambox
|
{{ambox}}
|
For article message boxes |
cmbox
|
{{cmbox}}
|
For category message boxes |
fmbox
|
{{fmbox}}
|
For interface message boxes |
imbox
|
{{imbox}}
|
For file namespace message boxes |
tmbox
|
{{tmbox}}
|
For talk page message boxes |
ombox
|
{{ombox}}
|
For message boxes in other namespaces |
See the template page of each box type for the available parameters.
Usage from #invoke
As well as the main
function, this module has separate functions for each box type.
They are accessed using the code {{#invoke:Message box|mbox|...}}
, {{#invoke:Message box|ambox|...}}
, etc.
These will work when called from other modules, but they access code used to process arguments passed from {{#invoke:...}}
, and so calling them will be less efficient than calling main
.
Technical details
The module uses the same basic code for each of the templates listed above; the differences between each of them are configured using the data at Module:Message box/configuration.