Module:documentation: Difference between revisions

From Laenkea
Jump to navigation Jump to search
No edit summary
No edit summary
Line 3: Line 3:
function export.show(frame)
function export.show(frame)
local source = frame.args[1] or frame.args["source"]
local source = frame.args[1] or frame.args["source"]
local title = mw.title.getCurrentTitle().fullText
local doc = ((type(source) == "string" and source ~= "") and mw.title.new(source))
local doc = ((type(source) == "string" and source ~= "") and mw.title.new(source))
or mw.title.new(mw.title.getCurrentTitle().fullText .. "/documentation")
or mw.title.new(title .. "/documentation")
if not doc.exists then
if not doc.exists then
return '\n<div style="margin-left:1em;">\n<i>This page has no documentation. Please <span class="plainlinks">[' .. doc:fullUrl{action="edit"} .. ' create it]</span>.</i>\n</div>\n'
local ret = '\n<div class="documentation">'
ret = ret .. "\n'''This page has no documentation.'''"
ret = ret .. '\nPlease <span class="plainlinks">[' .. doc:fullUrl{action="edit"} .. ' create it]</span>.'
return ret .. '\n</div>\n'
end
end
local doc_content = frame:expandTemplate{title=doc.fullText}
local doc_content = frame:expandTemplate{title=doc.fullText}
return '\n<div class="documentation">\n<i>The following documentation is located at [[' .. doc.fullText .. ']]. <sup><span class="plainlinks">[[' .. doc:fullUrl{action="edit"} .. " edit]]</span></sup></i>\n\n" .. (doc_content or "") .. "\n</div>\n"
local ret = '\n<div class="documentation" style="margin:1em 0 0; padding: 1em; border:1px solid #a8a8a8; background-color:#ecfcf4; clear:both;">'
ret = ret .. '\n<div style="padding-bottom:3px; border-bottom:1px solid #bfbfbf; margin-bottom:1ex;">'
ret = ret .. '\n<span style="font-size:125%; font-weight:bold;">[[File:TemplateDocumentation.svg|50px]] Template documentation</span>'
ret = ret .. ' <span class="mw-editsection-like plainlinks</span>'
ret = ret .. ' <nowiki>[</nowiki>[[' .. doc.fullText .. '|view]]<nowiki>]</nowiki>'
ret = ret .. ' <nowiki>[</nowiki>[[' .. doc:fullUrl{action="edit"} .. ' edit]]<nowiki>]</nowiki>'
ret = ret .. ' <nowiki>[</nowiki>[[Special:Purge/' .. title .. ']]<nowiki>]</nowiki>'
ret = ret .. '</span>'
ret = ret .. '\n</div></div>'
return ret
end
end


return export
return export

Revision as of 11:31, 7 August 2023

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 title = mw.title.getCurrentTitle().fullText
	local doc = ((type(source) == "string" and source ~= "") and mw.title.new(source))
		or mw.title.new(title .. "/documentation")
	if not doc.exists then
		local ret = '\n<div class="documentation">'
		ret = ret .. "\n'''This page has no documentation.'''"
		ret = ret .. '\nPlease <span class="plainlinks">[' .. doc:fullUrl{action="edit"} .. ' create it]</span>.'
		return ret .. '\n</div>\n'
	end
	local doc_content = frame:expandTemplate{title=doc.fullText}
	local ret = '\n<div class="documentation" style="margin:1em 0 0; padding: 1em; border:1px solid #a8a8a8; background-color:#ecfcf4; clear:both;">'
	ret = ret .. '\n<div style="padding-bottom:3px; border-bottom:1px solid #bfbfbf; margin-bottom:1ex;">'
	ret = ret .. '\n<span style="font-size:125%; font-weight:bold;">[[File:TemplateDocumentation.svg|50px]] Template documentation</span>'
	ret = ret .. ' <span class="mw-editsection-like plainlinks</span>'
	ret = ret .. ' <nowiki>[</nowiki>[[' .. doc.fullText .. '|view]]<nowiki>]</nowiki>'
	ret = ret .. ' <nowiki>[</nowiki>[[' .. doc:fullUrl{action="edit"} .. ' edit]]<nowiki>]</nowiki>'
	ret = ret .. ' <nowiki>[</nowiki>[[Special:Purge/' .. title .. ']]<nowiki>]</nowiki>'
	ret = ret .. '</span>'
	ret = ret .. '\n</div></div>'
	return ret
end

return export