Module:Message box/doc

From Foundry Wiki

This is the documentation page for Module:Message box

This is a meta-module that implements the message box templates {{mbox}}{{ambox}}{{cmbox}}{{fmbox}}{{imbox}}{{ombox}}{{tmbox}}comma-separator|conjunction=|and}}|word-separator}}}}. 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.

}}