Module:Optional style

--[=[ Simple module to construct a style attribute with an undefined number (including zero) of CSS properties ]=]

local p = {} --p stands for package local getArgs = require('Module:Arguments').getArgs

--[=[ Construct the string from the given table of property:values ]=] function p.make_style_string(properties) local out = '' local num_processed = 0 for k, v in pairs(properties) do		if k ~= 'style' and v~= '' then out = out .. k .. ':' .. v .. ';'		end end if properties.style ~= nil and properties.style ~= '' then out = out .. properties.style end if out == '' then return '' end return 'style="' .. out .. '"' end

--[=[ The main entry function from templates

Arguments are taken from both frame and parent argument lists ]=] function p.optional_style(frame) local args = getArgs(frame) return p.make_style_string(args) end

return p