Title: Module:Message box - freem
URL Source: https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box
Markdown Content:
[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#)
- [x]
* [Home](https://freemwiki.com/wiki/Main_Page)
* [Random](https://freemwiki.com/wiki/Special:Random)
* [Log in](https://freemwiki.com/index.php?title=Special:UserLogin&returnto=Module%3AMessage+box&returntoquery=mobileaction%3Dtoggle_view_mobile%26oldid%3D579556)
* [Settings](https://freemwiki.com/index.php?title=Special:MobileOptions&returnto=Module%3AMessage+box)
* [About](https://freemwiki.com/wiki/About)
* [Terms of Service](https://freemwiki.com/wiki/Terms_of_Service)
[freem](https://freemwiki.com/wiki/Main_Page)
Search
# Module:Message box
* [Language](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box "Language")
* [Watch](https://freemwiki.com/index.php?title=Special:UserLogin&returnto=Module%3AMessage+box)
* [Edit](https://freemwiki.com/index.php?title=Module:Message_box&action=edit)
Revision as of 06:18, 21 October 2025 by [Lukegao](https://freemwiki.com/index.php?title=User:Lukegao&action=edit&redlink=1 "User:Lukegao (page does not exist)")([talk](https://freemwiki.com/index.php?title=User_talk:Lukegao&action=edit&redlink=1 "User talk:Lukegao (page does not exist)") | [contribs](https://freemwiki.com/wiki/Special:Contributions/Lukegao "Special:Contributions/Lukegao"))(1 revision imported)
([diff](https://freemwiki.com/index.php?title=Module:Message_box&diff=prev&oldid=579556 "Module:Message box")) [← Older revision](https://freemwiki.com/index.php?title=Module:Message_box&direction=prev&oldid=579556 "Module:Message box") | Latest revision (diff) | Newer revision → (diff)
_Documentation for this module may be created at [Module:Message box/doc](https://freemwiki.com/index.php?title=Module:Message\_box/doc&action=edit&redlink=1 "Module:Message box/doc (page does not exist)")_
[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-1)require('strict')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-2)local getArgs[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-3)local yesno = require('Module:Yesno')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-4)local lang = mw.language.getContentLanguage()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-5)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-6)local CONFIG_MODULE = 'Module:Message box/configuration'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-7)local DEMOSPACES = {talk = 'tmbox', image = 'imbox', file = 'imbox', category = 'cmbox', article = 'ambox', main = 'ambox'}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-8)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-9)--------------------------------------------------------------------------------[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-10)-- Helper functions[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-11)--------------------------------------------------------------------------------[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-12)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-13)local function getTitleObject(...)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-14)-- Get the title object, passing the function through pcall[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-15)-- in case we are over the expensive function count limit.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-16)local success, title = pcall(mw.title.new, ...)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-17)if success then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-18)return title[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-19)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-20)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-21)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-22)local function union(t1, t2)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-23)-- Returns the union of two arrays.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-24)local vals = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-25)for i, v in ipairs(t1) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-26)vals[v] = true[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-27)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-28)for i, v in ipairs(t2) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-29)vals[v] = true[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-30)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-31)local ret = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-32)for k in pairs(vals) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-33)table.insert(ret, k)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-34)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-35)table.sort(ret)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-36)return ret[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-37)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-38)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-39)local function getArgNums(args, prefix)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-40)local nums = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-41)for k, v in pairs(args) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-42)local num = mw.ustring.match(tostring(k), '^' .. prefix .. '([1-9]%d*)$')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-43)if num then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-44)table.insert(nums, tonumber(num))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-45)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-46)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-47)table.sort(nums)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-48)return nums[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-49)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-50)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-51)--------------------------------------------------------------------------------[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-52)-- Box class definition[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-53)--------------------------------------------------------------------------------[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-54)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-55)local MessageBox = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-56)MessageBox.__index = MessageBox[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-57)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-58)function MessageBox.new(boxType, args, cfg)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-59)args = args or {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-60)local obj = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-61)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-62)-- Set the title object and the namespace.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-63)obj.title = getTitleObject(args.page) or mw.title.getCurrentTitle()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-64)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-65)-- Set the config for our box type.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-66)obj.cfg = cfg[boxType][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-67)if not obj.cfg then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-68)local ns = obj.title.namespace[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-69)-- boxType is "mbox" or invalid input[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-70)if args.demospace and args.demospace ~= '' then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-71)-- implement demospace parameter of mbox[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-72)local demospace = string.lower(args.demospace)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-73)if DEMOSPACES[demospace] then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-74)-- use template from DEMOSPACES[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-75)obj.cfg = cfg[DEMOSPACES[demospace]][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-76)elseif string.find( demospace, 'talk' ) then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-77)-- demo as a talk page[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-78)obj.cfg = cfg.tmbox[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-79)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-80)-- default to ombox[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-81)obj.cfg = cfg.ombox[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-82)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-83)elseif ns == 0 then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-84)obj.cfg = cfg.ambox -- main namespace[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-85)elseif ns == 6 then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-86)obj.cfg = cfg.imbox -- file namespace[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-87)elseif ns == 14 then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-88)obj.cfg = cfg.cmbox -- category namespace[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-89)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-90)local nsTable = mw.site.namespaces[ns][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-91)if nsTable and nsTable.isTalk then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-92)obj.cfg = cfg.tmbox -- any talk namespace[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-93)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-94)obj.cfg = cfg.ombox -- other namespaces or invalid input[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-95)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-96)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-97)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-98)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-99)-- Set the arguments, and remove all blank arguments except for the ones[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-100)-- listed in cfg.allowBlankParams.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-101)do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-102)local newArgs = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-103)for k, v in pairs(args) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-104)if v ~= '' then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-105)newArgs[k] = v[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-106)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-107)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-108)for i, param in ipairs(obj.cfg.allowBlankParams or {}) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-109)newArgs[param] = args[param][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-110)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-111)obj.args = newArgs[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-112)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-113)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-114)-- Define internal data structure.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-115)obj.categories = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-116)obj.classes = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-117)-- For lazy loading of [[Module:Category handler]].[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-118)obj.hasCategories = false[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-119)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-120)return setmetatable(obj, MessageBox)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-121)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-122)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-123)function MessageBox:addCat(ns, cat, sort)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-124)if not cat then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-125)return nil[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-126)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-127)if sort then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-128)cat = string.format('[[Category:%s|%s]]', cat, sort)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-129)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-130)cat = string.format('[[Category:%s]]', cat)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-131)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-132)self.hasCategories = true[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-133)self.categories[ns] = self.categories[ns] or {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-134)table.insert(self.categories[ns], cat)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-135)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-136)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-137)function MessageBox:addClass(class)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-138)if not class then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-139)return nil[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-140)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-141)table.insert(self.classes, class)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-142)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-143)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-144)function MessageBox:setParameters()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-145)local args = self.args[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-146)local cfg = self.cfg[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-147)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-148)-- Get type data.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-149)self.type = args.type[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-150)local typeData = cfg.types[self.type][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-151)self.invalidTypeError = cfg.showInvalidTypeError[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-152)and self.type[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-153)and not typeData[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-154)typeData = typeData or cfg.types[cfg.default][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-155)self.typeClass = typeData.class[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-156)self.typeImage = typeData.image[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-157)self.typeImageNeedsLink = typeData.imageNeedsLink[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-158)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-159)-- Find if the box has been wrongly substituted.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-160)self.isSubstituted = cfg.substCheck and args.subst == 'SUBST'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-161)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-162)-- Find whether we are using a small message box.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-163)self.isSmall = cfg.allowSmall and ([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-164)cfg.smallParam and args.small == cfg.smallParam[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-165)or not cfg.smallParam and yesno(args.small)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-166))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-167)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-168)-- Set the below row.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-169)self.below = cfg.below and args.below[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-170)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-171)-- Add attributes, classes and styles.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-172)self.id = args.id[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-173)self.name = args.name[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-174)if self.name then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-175)self:addClass('box-' .. string.gsub(self.name,' ','_'))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-176)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-177)if yesno(args.plainlinks) ~= false then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-178)self:addClass('plainlinks')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-179)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-180)if self.below then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-181)self:addClass('mbox-with-below')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-182)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-183)for _, class in ipairs(cfg.classes or {}) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-184)self:addClass(class)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-185)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-186)if self.isSmall then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-187)self:addClass(cfg.smallClass or 'mbox-small')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-188)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-189)self:addClass(self.typeClass)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-190)self:addClass(args.class)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-191)self.style = args.style[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-192)self.attrs = args.attrs[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-193)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-194)-- Set text style.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-195)self.textstyle = args.textstyle[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-196)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-197)-- Set image classes.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-198)self.imageRightClass = args.imagerightclass or args.imageclass[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-199)self.imageLeftClass = args.imageleftclass or args.imageclass[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-200)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-201)-- Find if we are on the template page or not. This functionality is only[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-202)-- used if useCollapsibleTextFields is set, or if both cfg.templateCategory[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-203)-- and cfg.templateCategoryRequireName are set.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-204)self.useCollapsibleTextFields = cfg.useCollapsibleTextFields[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-205)if self.useCollapsibleTextFields[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-206)or cfg.templateCategory[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-207)and cfg.templateCategoryRequireName[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-208)then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-209)if self.name then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-210)local templateName = mw.ustring.match([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-211)self.name,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-212)'^[tT][eE][mM][pP][lL][aA][tT][eE][%s_]*:[%s_]*(.*)$'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-213)) or self.name[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-214)templateName = 'Template:' .. templateName[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-215)self.templateTitle = getTitleObject(templateName)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-216)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-217)self.isTemplatePage = self.templateTitle[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-218)and mw.title.equals(self.title, self.templateTitle)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-219)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-220)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-221)-- Process data for collapsible text fields. At the moment these are only[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-222)-- used in {{ambox}}.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-223)if self.useCollapsibleTextFields then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-224)-- Get the self.issue value.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-225)if self.isSmall and args.smalltext then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-226)self.issue = args.smalltext[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-227)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-228)local sect[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-229)if args.sect == '' then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-230)sect = 'This ' .. (cfg.sectionDefault or 'page')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-231)elseif type(args.sect) == 'string' then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-232)sect = 'This ' .. args.sect[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-233)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-234)local issue = args.issue[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-235)issue = type(issue) == 'string' and issue ~= '' and issue or nil[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-236)local text = args.text[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-237)text = type(text) == 'string' and text or nil[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-238)local issues = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-239)table.insert(issues, sect)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-240)table.insert(issues, issue)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-241)table.insert(issues, text)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-242)self.issue = table.concat(issues, ' ')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-243)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-244)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-245)-- Get the self.talk value.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-246)local talk = args.talk[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-247)-- Show talk links on the template page or template subpages if the talk[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-248)-- parameter is blank.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-249)if talk == ''[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-250)and self.templateTitle[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-251)and ([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-252)mw.title.equals(self.templateTitle, self.title)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-253)or self.title:isSubpageOf(self.templateTitle)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-254))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-255)then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-256)talk = '#'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-257)elseif talk == '' then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-258)talk = nil[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-259)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-260)if talk then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-261)-- If the talk value is a talk page, make a link to that page. Else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-262)-- assume that it's a section heading, and make a link to the talk[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-263)-- page of the current page with that section heading.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-264)local talkTitle = getTitleObject(talk)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-265)local talkArgIsTalkPage = true[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-266)if not talkTitle or not talkTitle.isTalkPage then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-267)talkArgIsTalkPage = false[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-268)talkTitle = getTitleObject([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-269)self.title.text,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-270)mw.site.namespaces[self.title.namespace].talk.id[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-271))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-272)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-273)if talkTitle and talkTitle.exists then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-274) local talkText[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-275) if self.isSmall then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-276) local talkLink = talkArgIsTalkPage and talk or (talkTitle.prefixedText .. (talk == '#' and '' or '#') .. talk)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-277) talkText = string.format('([[%s|talk]])', talkLink)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-278) else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-279) talkText = 'Relevant discussion may be found on'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-280) if talkArgIsTalkPage then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-281) talkText = string.format([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-282) '%s [[%s|%s]].',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-283) talkText,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-284) talk,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-285) talkTitle.prefixedText[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-286) )[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-287) else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-288) talkText = string.format([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-289) '%s the [[%s' .. (talk == '#' and '' or '#') .. '%s|talk page]].',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-290) talkText,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-291) talkTitle.prefixedText,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-292) talk[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-293) )[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-294) end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-295) end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-296)self.talk = talkText[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-297)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-298)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-299)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-300)-- Get other values.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-301)self.fix = args.fix ~= '' and args.fix or nil[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-302)local date[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-303)if args.date and args.date ~= '' then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-304)date = args.date[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-305)elseif args.date == '' and self.isTemplatePage then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-306)date = lang:formatDate('F Y')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-307)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-308)if date then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-309)self.date = string.format(" (%s)", date)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-310)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-311)self.info = args.info[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-312)if yesno(args.removalnotice) then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-313)self.removalNotice = cfg.removalNotice[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-314)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-315)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-316)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-317)-- Set the non-collapsible text field. At the moment this is used by all box[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-318)-- types other than ambox, and also by ambox when small=yes.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-319)if self.isSmall then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-320)self.text = args.smalltext or args.text[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-321)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-322)self.text = args.text[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-323)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-324)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-325)-- General image settings.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-326)self.imageCellDiv = not self.isSmall and cfg.imageCellDiv[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-327)self.imageEmptyCell = cfg.imageEmptyCell[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-328)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-329)-- Left image settings.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-330)local imageLeft = self.isSmall and args.smallimage or args.image[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-331)if cfg.imageCheckBlank and imageLeft ~= 'blank' and imageLeft ~= 'none'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-332)or not cfg.imageCheckBlank and imageLeft ~= 'none'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-333)then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-334)self.imageLeft = imageLeft[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-335)if not imageLeft then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-336)local imageSize = self.isSmall[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-337)and (cfg.imageSmallSize or '30x30px')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-338)or '40x40px'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-339)self.imageLeft = string.format('[[File:%s|%s%s|alt=]]', self.typeImage[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-340)or 'Information icon4.svg', imageSize, self.typeImageNeedsLink and "" or "|link=" )[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-341)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-342)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-343)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-344)-- Right image settings.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-345)local imageRight = self.isSmall and args.smallimageright or args.imageright[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-346)if not (cfg.imageRightNone and imageRight == 'none') then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-347)self.imageRight = imageRight[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-348)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-349)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-350)-- set templatestyles[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-351)self.base_templatestyles = cfg.templatestyles[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-352)self.templatestyles = args.templatestyles[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-353)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-354)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-355)function MessageBox:setMainspaceCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-356)local args = self.args[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-357)local cfg = self.cfg[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-358)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-359)if not cfg.allowMainspaceCategories then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-360)return nil[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-361)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-362)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-363)local nums = {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-364)for _, prefix in ipairs{'cat', 'category', 'all'} do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-365)args[prefix .. '1'] = args[prefix][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-366)nums = union(nums, getArgNums(args, prefix))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-367)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-368)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-369)-- The following is roughly equivalent to the old {{Ambox/category}}.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-370)local date = args.date[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-371)date = type(date) == 'string' and date[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-372)local preposition = 'from'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-373)for _, num in ipairs(nums) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-374)local mainCat = args['cat' .. tostring(num)][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-375)or args['category' .. tostring(num)][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-376)local allCat = args['all' .. tostring(num)][](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-377)mainCat = type(mainCat) == 'string' and mainCat[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-378)allCat = type(allCat) == 'string' and allCat[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-379)if mainCat and date and date ~= '' then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-380)local catTitle = string.format('%s %s %s', mainCat, preposition, date)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-381)self:addCat(0, catTitle)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-382)catTitle = getTitleObject('Category:' .. catTitle)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-383)if not catTitle or not catTitle.exists then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-384)self:addCat(0, 'Articles with invalid date parameter in template')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-385)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-386)elseif mainCat and (not date or date == '') then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-387)self:addCat(0, mainCat)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-388)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-389)if allCat then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-390)self:addCat(0, allCat)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-391)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-392)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-393)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-394)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-395)function MessageBox:setTemplateCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-396)local args = self.args[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-397)local cfg = self.cfg[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-398)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-399)-- Add template categories.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-400)if cfg.templateCategory then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-401)if cfg.templateCategoryRequireName then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-402)if self.isTemplatePage then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-403)self:addCat(10, cfg.templateCategory)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-404)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-405)elseif not self.title.isSubpage then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-406)self:addCat(10, cfg.templateCategory)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-407)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-408)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-409)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-410)-- Add template error categories.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-411)if cfg.templateErrorCategory then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-412)local templateErrorCategory = cfg.templateErrorCategory[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-413)local templateCat, templateSort[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-414)if not self.name and not self.title.isSubpage then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-415)templateCat = templateErrorCategory[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-416)elseif self.isTemplatePage then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-417)local paramsToCheck = cfg.templateErrorParamsToCheck or {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-418)local count = 0[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-419)for i, param in ipairs(paramsToCheck) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-420)if not args[param] then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-421)count = count + 1[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-422)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-423)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-424)if count > 0 then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-425)templateCat = templateErrorCategory[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-426)templateSort = tostring(count)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-427)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-428)if self.categoryNums and #self.categoryNums > 0 then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-429)templateCat = templateErrorCategory[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-430)templateSort = 'C'[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-431)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-432)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-433)self:addCat(10, templateCat, templateSort)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-434)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-435)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-436)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-437)function MessageBox:setAllNamespaceCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-438)-- Set categories for all namespaces.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-439)if self.invalidTypeError then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-440)local allSort = (self.title.namespace == 0 and 'Main:' or '') .. self.title.prefixedText[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-441)self:addCat('all', 'Wikipedia message box parameter needs fixing', allSort)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-442)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-443)if self.isSubstituted then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-444)self:addCat('all', 'Pages with incorrectly substituted templates')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-445)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-446)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-447)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-448)function MessageBox:setCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-449)if self.title.namespace == 0 then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-450)self:setMainspaceCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-451)elseif self.title.namespace == 10 then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-452)self:setTemplateCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-453)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-454)self:setAllNamespaceCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-455)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-456)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-457)function MessageBox:renderCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-458)if not self.hasCategories then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-459)-- No categories added, no need to pass them to Category handler so,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-460)-- if it was invoked, it would return the empty string.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-461)-- So we shortcut and return the empty string.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-462)return ""[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-463)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-464)-- Convert category tables to strings and pass them through[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-465)-- [[Module:Category handler]].[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-466)return require('Module:Category handler')._main{[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-467)main = table.concat(self.categories[0] or {}),[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-468)template = table.concat(self.categories[10] or {}),[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-469)all = table.concat(self.categories.all or {}),[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-470)nocat = self.args.nocat,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-471)page = self.args.page[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-472)}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-473)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-474)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-475)function MessageBox:exportDiv()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-476)local root = mw.html.create()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-477)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-478)-- Add the subst check error.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-479)if self.isSubstituted and self.name then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-480)root:tag('b')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-481):addClass('error')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-482):wikitext(string.format([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-483)'Template %s[[Template:%s|%s]]%s has been incorrectly substituted.',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-484)mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-485)))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-486)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-487)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-488)local frame = mw.getCurrentFrame()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-489)root:wikitext(frame:extensionTag{[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-490)name = 'templatestyles',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-491)args = { src = self.base_templatestyles },[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-492)})[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-493)-- Add support for a single custom templatestyles sheet. Undocumented as[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-494)-- need should be limited and many templates using mbox are substed; we[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-495)-- don't want to spread templatestyles sheets around to arbitrary places[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-496)if self.templatestyles then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-497)root:wikitext(frame:extensionTag{[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-498)name = 'templatestyles',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-499)args = { src = self.templatestyles },[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-500)})[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-501)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-502)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-503)-- Create the box.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-504)local mbox = root:tag('div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-505)mbox:attr('id', self.id or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-506)for i, class in ipairs(self.classes or {}) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-507)mbox:addClass(class or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-508)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-509)mbox[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-510):cssText(self.style or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-511)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-512)if self.attrs then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-513)mbox:attr(self.attrs)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-514)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-515)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-516)local flex_container[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-517)if self.below then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-518)-- we need to wrap the flex components (`image(right)` and `text`) in their[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-519)-- own container div to support the `below` parameter[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-520)flex_container = mw.html.create('div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-521)flex_container:addClass('mbox-flex')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-522)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-523)-- the mbox itself is the parent, so we need no HTML flex_container[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-524)flex_container = mw.html.create()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-525)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-526)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-527)-- Add the left-hand image.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-528)if self.imageLeft then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-529)local imageLeftCell = flex_container:tag('div'):addClass('mbox-image')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-530)imageLeftCell[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-531):addClass(self.imageLeftClass)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-532):wikitext(self.imageLeft or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-533)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-534)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-535)-- Add the text.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-536)local textCell = flex_container:tag('div'):addClass('mbox-text')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-537)if self.useCollapsibleTextFields then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-538)-- The message box uses advanced text parameters that allow things to be[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-539)-- collapsible. At the moment, only ambox uses this.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-540)textCell:cssText(self.textstyle or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-541)local textCellDiv = textCell:tag('div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-542)textCellDiv[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-543):addClass('mbox-text-span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-544):wikitext(self.issue or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-545)if (self.talk or self.fix) then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-546)textCellDiv:tag('span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-547):addClass('hide-when-compact')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-548):wikitext(self.talk and (' ' .. self.talk) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-549):wikitext(self.fix and (' ' .. self.fix) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-550)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-551)textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-552)if self.info and not self.isSmall then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-553)textCellDiv[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-554):tag('span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-555):addClass('hide-when-compact')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-556):wikitext(self.info and (' ' .. self.info) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-557)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-558)if self.removalNotice then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-559)textCellDiv:tag('span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-560):addClass('hide-when-compact')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-561):tag('i')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-562):wikitext(string.format(" (%s)", self.removalNotice))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-563)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-564)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-565)-- Default text formatting - anything goes.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-566)textCell[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-567):cssText(self.textstyle or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-568):wikitext(self.text or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-569)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-570)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-571)-- Add the right-hand image.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-572)if self.imageRight then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-573)local imageRightCell = flex_container:tag('div'):addClass('mbox-imageright')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-574)imageRightCell[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-575):addClass(self.imageRightClass)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-576):wikitext(self.imageRight or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-577)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-578)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-579)mbox:node(flex_container)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-580)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-581)-- Add the below row.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-582)if self.below then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-583)mbox:tag('div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-584):addClass('mbox-text mbox-below')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-585):cssText(self.textstyle or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-586):wikitext(self.below or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-587)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-588)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-589)-- Add error message for invalid type parameters.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-590)if self.invalidTypeError then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-591)root:tag('div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-592):addClass('mbox-invalid-type')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-593):wikitext(string.format([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-594)'This message box is using an invalid "type=%s" parameter and needs fixing.',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-595)self.type or ''[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-596)))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-597)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-598)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-599)-- Add categories.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-600)root:wikitext(self:renderCategories() or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-601)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-602)return tostring(root)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-603)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-604)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-605)function MessageBox:export()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-606)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-607)local root = mw.html.create()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-608)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-609)-- Add the subst check error.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-610)if self.isSubstituted and self.name then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-611)root:tag('b')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-612):addClass('error')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-613):wikitext(string.format([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-614)'Template %s[[Template:%s|%s]]%s has been incorrectly substituted.',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-615)mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-616)))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-617)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-618)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-619)local frame = mw.getCurrentFrame()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-620)root:wikitext(frame:extensionTag{[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-621)name = 'templatestyles',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-622)args = { src = self.base_templatestyles },[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-623)})[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-624)-- Add support for a single custom templatestyles sheet. Undocumented as[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-625)-- need should be limited and many templates using mbox are substed; we[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-626)-- don't want to spread templatestyles sheets around to arbitrary places[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-627)if self.templatestyles then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-628)root:wikitext(frame:extensionTag{[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-629)name = 'templatestyles',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-630)args = { src = self.templatestyles },[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-631)})[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-632)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-633)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-634)-- Create the box table.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-635)local boxTable = root:tag('table')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-636)boxTable:attr('id', self.id or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-637)for i, class in ipairs(self.classes or {}) do[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-638)boxTable:addClass(class or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-639)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-640)boxTable[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-641):cssText(self.style or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-642):attr('role', 'presentation')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-643)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-644)if self.attrs then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-645)boxTable:attr(self.attrs)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-646)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-647)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-648)-- Add the left-hand image.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-649)local row = boxTable:tag('tr')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-650)if self.imageLeft then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-651)local imageLeftCell = row:tag('td'):addClass('mbox-image')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-652)if self.imageCellDiv then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-653)-- If we are using a div, redefine imageLeftCell so that the image[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-654)-- is inside it. Divs use style="width: 52px;", which limits the[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-655)-- image width to 52px. If any images in a div are wider than that,[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-656)-- they may overlap with the text or cause other display problems.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-657)imageLeftCell = imageLeftCell:tag('div'):addClass('mbox-image-div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-658)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-659)imageLeftCell[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-660):addClass(self.imageLeftClass)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-661):wikitext(self.imageLeft or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-662)elseif self.imageEmptyCell then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-663)-- Some message boxes define an empty cell if no image is specified, and[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-664)-- some don't. The old template code in templates where empty cells are[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-665)-- specified gives the following hint: "No image. Cell with some width[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-666)-- or padding necessary for text cell to have 100% width."[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-667)row:tag('td')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-668):addClass('mbox-empty-cell')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-669)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-670)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-671)-- Add the text.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-672)local textCell = row:tag('td'):addClass('mbox-text')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-673)if self.useCollapsibleTextFields then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-674)-- The message box uses advanced text parameters that allow things to be[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-675)-- collapsible. At the moment, only ambox uses this.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-676)textCell:cssText(self.textstyle or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-677)local textCellDiv = textCell:tag('div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-678)textCellDiv[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-679):addClass('mbox-text-span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-680):wikitext(self.issue or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-681)if (self.talk or self.fix) then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-682)textCellDiv:tag('span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-683):addClass('hide-when-compact')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-684):wikitext(self.talk and (' ' .. self.talk) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-685):wikitext(self.fix and (' ' .. self.fix) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-686)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-687)textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-688)if self.info and not self.isSmall then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-689)textCellDiv[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-690):tag('span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-691):addClass('hide-when-compact')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-692):wikitext(self.info and (' ' .. self.info) or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-693)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-694)if self.removalNotice then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-695)textCellDiv:tag('span')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-696):addClass('hide-when-compact')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-697):tag('i')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-698):wikitext(string.format(" (%s)", self.removalNotice))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-699)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-700)else[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-701)-- Default text formatting - anything goes.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-702)textCell[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-703):cssText(self.textstyle or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-704):wikitext(self.text or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-705)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-706)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-707)-- Add the right-hand image.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-708)if self.imageRight then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-709)local imageRightCell = row:tag('td'):addClass('mbox-imageright')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-710)if self.imageCellDiv then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-711)-- If we are using a div, redefine imageRightCell so that the image[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-712)-- is inside it.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-713)imageRightCell = imageRightCell:tag('div'):addClass('mbox-image-div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-714)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-715)imageRightCell[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-716):addClass(self.imageRightClass)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-717):wikitext(self.imageRight or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-718)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-719)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-720)-- Add the below row.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-721)if self.below then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-722)boxTable:tag('tr')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-723):tag('td')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-724):attr('colspan', self.imageRight and '3' or '2')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-725):addClass('mbox-text')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-726):cssText(self.textstyle or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-727):wikitext(self.below or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-728)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-729)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-730)-- Add error message for invalid type parameters.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-731)if self.invalidTypeError then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-732)root:tag('div')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-733):addClass('mbox-invalid-type')[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-734):wikitext(string.format([](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-735)'This message box is using an invalid "type=%s" parameter and needs fixing.',[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-736)self.type or ''[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-737)))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-738)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-739)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-740)-- Add categories.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-741)root:wikitext(self:renderCategories() or nil)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-742)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-743)return tostring(root)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-744)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-745)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-746)--------------------------------------------------------------------------------[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-747)-- Exports[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-748)--------------------------------------------------------------------------------[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-749)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-750)local p, mt = {}, {}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-751)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-752)function p._exportClasses()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-753)-- For testing.[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-754)return {[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-755)MessageBox = MessageBox[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-756)}[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-757)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-758)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-759)function p.main(boxType, args, cfgTables)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-760)local box = MessageBox.new(boxType, args, cfgTables or mw.loadData(CONFIG_MODULE))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-761)box:setParameters()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-762)box:setCategories()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-763)-- DIV MIGRATION CONDITIONAL[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-764)if box.cfg.div_structure then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-765)return box:exportDiv()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-766)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-767)-- END DIV MIGRATION CONDITIONAL[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-768)return box:export()[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-769)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-770)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-771)function mt.__index(t, k)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-772)return function (frame)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-773)if not getArgs then[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-774)getArgs = require('Module:Arguments').getArgs[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-775)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-776)return t.main(k, getArgs(frame, {trim = false, removeBlanks = false}))[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-777)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-778)end[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-779)[](https://freemwiki.com/index.php?mobileaction=toggle_view_mobile&oldid=579556&title=Module%3AMessage_box#L-780)return setmetatable(p, mt)
Retrieved from "[https://freemwiki.com/index.php?title=Module:Message_box&oldid=579556](https://freemwiki.com/index.php?title=Module:Message_box&oldid=579556)"
[Last edited on 21 October 2025, at 06:18](https://freemwiki.com/index.php?title=Module:Message_box&action=history)
#### Languages
This page is not available in other languages.
freem
* This page was last edited on 21 October 2025, at 06:18.
* Content is available under [Creative Commons Attribution-ShareAlike 4.0](https://creativecommons.org/licenses/by-sa/4.0/) unless otherwise noted. FreemWiki is operated by **FINGERPOWER DIGITAL TECHNOLOGY LLC** (Colorado, Entity ID 20221978727).
* [Privacy Policy](https://freemwiki.com/wiki/Privacy_Policy)
* [About](https://freemwiki.com/wiki/About)
* [Terms of Service](https://freemwiki.com/wiki/Terms_of_Service)
* [Desktop](https://freemwiki.com/index.php?title=Module:Message_box&mobileaction=toggle_view_desktop&oldid=579556)