Module:Sandbox

From Path of Exile 2 Wiki
Revision as of 04:32, 29 July 2014 by Vinifera7 (talk | contribs)
Jump to navigation Jump to search
Module documentation[view] [edit] [history] [purge]


This page is not an actual Scribunto module. It exists to provide editors a place to create experimental modules.

Naming your modules

To keep things tidy, please use the following format to name your experimental modules:

Module:Sandbox/Your username/Module name

Cleaning up unused modules

Experimental modules may be deleted by admins upon request or after a long period of inactivity.

List of modules in this area

For a list of the experimental modules under Module:Sandbox, see Special:PrefixIndex/Module:Sandbox/.

local p = {}
local getArgs
local yesno = require('Module:Yesno')

function p.main(frame)
	if not getArgs then
		getArgs = require('Module:Arguments').getArgs
	end
	local args = getArgs(frame, {
		
	})
	return p._main(args)
end

function p._main(args)
	local types = {
		delete = {
			class = 'mbox-delete',
			image = 'Ambox warning pn.svg'
		},
		content = {
			class = 'mbox-content',
			image = 'Ambox important.svg'
		},
		style = {
			class = 'mbox-style',
			image = 'Edit-clear.svg'
		},
		notice = {
			class = 'mbox-notice',
			image = 'Tango-style info icon.svg'
		}
	}
	local classes = {'mbox'}
	local boxType = args.type or 'notice'
	local small = yesno(args.small)
	local class = args.class
	local style = args.style
	local image = args.image or types[boxType].image
	local imagesize = small and '30x30px' or '40x40px'
	local text = args.text or ''
	local textstyle = args.textstyle
	table.insert(classes, types[boxType].class)
	if small then
		table.insert(classes, 'mbox-small')
	end
	if class then
		table.insert(classes, class)
	end
	local out = {}
	table.insert(out, '<div class="' .. table.concat(classes, ' ') .. '" ')
	if style then
		table.insert(out, 'style="' .. style .. '" ')
	end
	table.insert(out, '><div class="mbox-inner">')
	if image ~= 'none' then
		table.insert(out, '<div class="mbox-image">[[File:' .. image .. '|' .. imagesize .. '|link=|alt=]]</div>')
	end
	table.insert(out, '<div class="mbox-text" ')
	if textstyle then
		table.insert(out, 'style="' .. textstyle .. '" ')
	end
	table.insert(out, '>' .. text .. '</div>')
	table.insert(out, '</div></div>')
	return table.concat(out)
end

return p