Modul:ProcessArgs

Aus Wikicadia
Version vom 20. Mai 2024, 16:21 Uhr von Admin (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „local p = {} function p.norm( origArgs ) if type( origArgs ) ~= 'table' then origArgs = mw.getCurrentFrame():getParent().args end local args = {} for k, v in pairs( origArgs ) do v = mw.text.trim( tostring( v ) ) if v ~= '' then args[k] = v end end return args end function p.merge( origArgs, parentArgs, norm ) if type( origArgs ) ~= 'table' then norm = origArgs local f = mw.getCurrentFrame() origArgs = f.args parentArgs = f:…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Die Dokumentation für dieses Modul kann unter Modul:ProcessArgs/Doku erstellt werden

local p = {}
function p.norm( origArgs )
	if type( origArgs ) ~= 'table' then
		origArgs = mw.getCurrentFrame():getParent().args
	end
	local args = {}
	
	for k, v in pairs( origArgs ) do
		v = mw.text.trim( tostring( v ) )
		if v ~= '' then
			args[k] = v
		end
	end
	
	return args
end

function p.merge( origArgs, parentArgs, norm )
	if type( origArgs ) ~= 'table' then
		norm = origArgs
		local f = mw.getCurrentFrame()
		origArgs = f.args
		parentArgs = f:getParent().args
	end
	local args = {}
	
	for k, v in pairs( origArgs ) do
		v = mw.text.trim( tostring( v ) )
		if not norm or norm and v ~= '' then
			args[k] = v
		end
	end
	
	for k, v in pairs( parentArgs ) do
		v = mw.text.trim( v )
		if ( not norm or norm and v ~= '' ) and not args[k] then
			args[k] = v
		end
	end
	
	return args
end
return p