Module:documentation

From Laenkea
Revision as of 13:22, 5 August 2023 by Maria (talk | contribs)
Jump to navigation Jump to search

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

local export = {}

function export.show(frame)
	local source = frame.args[1] or frame.args["source"]
	local doc = ((type(source) == "string" and source ~= "") and mw.title.new(source))
		or mw.title.new(mw.title.getCurrentTitle().fullText .. "/documentation")
	if not doc.exists then
		return '<div style="margin-left:1em;"><i>This page has no documentation. [[' .. doc:fullUrl{action="edit"} .. '|Create it]].</div>'
	end
	local doc_content = doc:getContent()
	if doc_content == nil then
		error("Documentation page exists but content is nil")
	end
	return '<div class="documentation">\nThe following documentation is located at [[' .. doc.fullText .. "]]. <sup>[[" .. doc:fullUrl{action="edit"} .. "|edit]]</sup>\n\n" .. doc:getContent() .. "\n</div>"
end

return export