Module:message box

From Linguifex
Revision as of 12:40, 21 April 2026 by Sware (talk | contribs) (Created page with "local html_create = mw.html.create local tostring = tostring local export = {} local function make_box(tag, rows, image, header, text) tag = tag:addClass("noprint") :tag("table") :tag("tr") :tag("td") if rows > 1 then tag:attr("rowspan", rows) end tag = tag:wikitext(image) :done() if header then tag = tag:node(header) :done() :tag("tr") end return tostring(tag:tag("td") :wikitext(text) :allDone()) .. require("Module:TemplateStyles")("M...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Documentation for this module may be created at Module:message box/doc

local html_create = mw.html.create
local tostring = tostring

local export = {}

local function make_box(tag, rows, image, header, text)
	tag = tag:addClass("noprint")
		:tag("table")
			:tag("tr")
				:tag("td")
	if rows > 1 then
		tag:attr("rowspan", rows)
	end
	tag = tag:wikitext(image)
		:done()
	if header then
		tag = tag:node(header)
			:done()
			:tag("tr")
	end
	return tostring(tag:tag("td")
		:wikitext(text)
		:allDone()) ..
		require("Module:TemplateStyles")("Module:message box/styles.css")
end

function export.maintenance(color, image, title, text)
	local div = html_create("div")
		:addClass("maintenance-box")
		:addClass("maintenance-box-" .. color)
	local header = html_create("th")
		:css("text-align", "left")
		:wikitext(title)
	return make_box(div, 2, image, header, text)
end

function export.request(image, text)
	local div = html_create("div")
		:addClass("request-box")
	return make_box(div, 1, image, nil, text)
end

return export