Module:Demo: Difference between revisions

From Zoophilia Wiki
Jump to navigationJump to search
meta>Codehydro
better way to isolate args
meta>Codehydro
mNo edit summary
Line 5: Line 5:
orphan = frame:newChild{}
orphan = frame:newChild{}
orphan.getParent = function() return nil end
orphan.getParent = function() return nil end
        return {
return {
source = mw.text.nowiki(mw.text.decode(mw.text.unstripNoWiki(frame.args[arg or 1] or ''))),
source = mw.text.nowiki(mw.text.decode(mw.text.unstripNoWiki(frame.args[arg or 1] or ''))),
output = orphan:preprocess(mw.text.unstripNoWiki(frame.args[arg or 1] or '')),
output = orphan:preprocess(mw.text.unstripNoWiki(frame.args[arg or 1] or '')),

Revision as of 20:21, 7 January 2015

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

local p = {}

function p.get(frame, arg)
	frame = frame:getParent() or frame
	orphan = frame:newChild{}
	orphan.getParent = function() return nil end
	return {
		source = mw.text.nowiki(mw.text.decode(mw.text.unstripNoWiki(frame.args[arg or 1] or ''))),
		output = orphan:preprocess(mw.text.unstripNoWiki(frame.args[arg or 1] or '')),
		frame = frame
	}
end

function p.main(frame)
	local show = p.get(frame)
	local br = ''
	for k = 1, (show.frame.args.br or 1) do
		br = br .. '<br>'
	end
	if show[show.frame.args.result_arg] then
		return show[show.frame.args.result_arg]
	end
	return string.format('<pre%s>%s</pre>%s%s', show.frame.args.style and string.format(" style='%s'", show.frame.args.style) or '', show.source, br, show.output)
end

return p