Op den Inhalt sprangen

Modul:TabData

Vu Wikipedia

local p={}
function p.getClip(frame)
	local object=frame.args.object
	if object then
		local lang=frame.args.lang
		local t=(
			lang and
			mw.ext.data.get(object..".tab",lang)or
			mw.ext.data.get(object..".tab")
		)
		local all=frame.args.all
		if all then
			if all==0 then
				return t
			end
			return tostring(t)
		end
		for i,v in ipairs(frame.args)do
			if type(t)~=type({})then
				break
			end
			t=t[v]or t[tonumber(v)]
		end
		if type(t)==type({})then
			local s=""
			for i,v in pairs(t)do
				s=s.."* "..type(v)..":"..i.."="..tostring(v).."\n"
			end
			return s
		elseif t==nil or t==false then
			return""
		elseif t==true then
			return"1=1"
		else
			return tostring(t)
		end
	else
		return""
	end
end
function p.check(frame)
	local i=frame.args[1]or"0"
	if i=="0"then
		if mw then
			if mw.ext then
				if mw.ext.data then
					if mw.ext.data.get then
						return"mw.ext.data.get"
					else
						return"mw.ext.data"
					end
				else
					return"mw.ext"
				end
			else
				return"mw"
			end
		else
			return""
		end
	else
		return""
	end
end
return p