Dokumentaciju za ovaj modul možete napraviti na stranici Modul:Functions/dok

require "Modul:No globals"

local p = {}

function p.firstToUpper(str)
	return mw.ustring.upper(mw.ustring.sub(str, 1, 1)) .. mw.ustring.sub(str, 2)
end


function p.cleanArgs(args)
	local cleanArgs = {}
	for key, value in pairs(args) do
		if type(value) == 'string' then
			local value = mw.text.trim(value)
			if value ~= '' then
				cleanArgs[key] = value
			end
		elseif type(value) == 'table' then
			if not p.isTableEmpty(value) then
				cleanArgs[key] = value
			end
		else
			cleanArgs[key] = value
		end
	end
	return cleanArgs
end

function p.isTableEmpty(Table)
	for key, value in pairs(Table) do
		if type(value) == 'table' then
			if not p.isTableEmpty(value) then
				return false
			end
		elseif type(value) == 'string' then
			if mw.text.trim(value) ~= '' then
				return false
			end
		else
			return false
		end
	end
	return true
end

return p