Module:shortcut box: Difference between revisions

From Laenkea
Jump to navigation Jump to search
No edit summary
No edit summary
Line 22: Line 22:
type = "notice",
type = "notice",
small = true,
small = true,
image = nil,
image = "none",
style = "text-align:center;",
style = "text-align:center;",
})
})

Revision as of 14:40, 7 August 2023

Documentation for this module may be created at Module:shortcut box/documentation

local export = {}

local m_message_box = require("Module:Message box")
local m_template = require("Module:template")

function export.format_shortcuts(shortcuts)
	local text = {}
	for _, shortcut in ipairs(shortcuts) do
		if string.sub(shortcut, 1, 9) == "Template:" then
			table.insert(text, m_template.make_template({[1] = string.sub(shortcut, 10)}, false))
		else
			table.insert(text, shortcut)
		end
	end
	return table.concat(text, "\n")
end

function export.render_box(shortcuts)
	local formatted_shortcuts = export.format_shortcuts(shortcuts)
	return m_message_box.main("mbox", {
		text = "'''Shortcuts'''\n<hr style=\"margin-bottom:6px;\"/>\n" .. formatted_shortcuts,
		type = "notice",
		small = true,
		image = "none",
		style = "text-align:center;",
	})
end

function export.show(frame)
	return export.render_box(frame:getParent().args)
end

return export