Module:LevelTabs

From Plants vs. Zombies Wiki
Jump to navigation Jump to search

Code:

{{LevelTabs|Primary}}

Source Code:

{| style="width:100%; height:45px;"
|- style="font-size:120%"
! style="width:25%; padding:5px 0; border:1px solid green; -moz-border-radius:5px 5px 5px 5px; -webkit-border-radius:5px 5px 5px 5px;" |  [[{{ROOTPAGENAME}}|Primary version]] 
|}

Result:

Primary version

Code:

{{LevelTabs|Nintendo DS|ATV (Glitched)}}

Source Code:

{| style="width:100%; height:45px;"
|- style="font-size:120%"
! style="width:25%; padding:5px 0; border:1px solid green; -moz-border-radius:5px 5px 5px 5px; -webkit-border-radius:5px 5px 5px 5px;" |  [[{{ROOTPAGENAME}}/Nintendo DS version|Nintendo DS Version]] 
! style="width:25%; padding:5px 0; border:1px solid green; -moz-border-radius:5px 5px 5px 5px; -webkit-border-radius:5px 5px 5px 5px;" |  [[{{ROOTPAGENAME}}/Android TV version (Glitched)|Android TV version (Glitched)]] 
|}

Result:

Nintendo DS Version Android TV version (Glitched)

Android TV version (Intended) Endless Edition version Great Wall Edition version

Endless Edition version Great Wall Edition version J2ME version J2ME version (Chinese)


local p = {}
local getArgs = require('Dev:Arguments').getArgs

local baseName = tostring(mw.title.getCurrentTitle().basePageTitle)

function p.newHeader(page, display)
	local link = string.format(" [[%s%s|%s]] ", baseName, page, display)
    return '! style="width:25%; padding:5px 0; border:1px solid green; -moz-border-radius:5px 5px 5px 5px; -webkit-border-radius:5px 5px 5px 5px;" | '..link
end

function p._main(args)
	local contents = {'{| style="width:100%; height:45px;"', '|- style="font-size:120%;"'}
	for _, version in ipairs(args) do
	    if version == "Primary" then
	        table.insert(contents, p.newHeader("", "Primary version"))
	    elseif version == "Nintendo DS" then
	        table.insert(contents, p.newHeader("/Nintendo DS version", "Nintendo DS Version"))
	    elseif version == "ATV (Glitched)" then
	        table.insert(contents, p.newHeader("/Android TV version (Glitched)", "Android TV version (Glitched)"))
	    elseif version == "ATV (Intended)" then
	        table.insert(contents, p.newHeader("/Android TV version (Intended)", "Android TV version (Intended)"))
	    elseif version == "Endless Edition" then
	        table.insert(contents, p.newHeader("/Endless Edition version", "Endless Edition version"))
	    elseif version == "GW Edition" then
	        table.insert(contents, p.newHeader("/Great Wall Edition version", "Great Wall Edition version"))
	    elseif version == "J2ME" then
	        table.insert(contents, p.newHeader("/J2ME version", "J2ME version"))
	    elseif version == "J2ME (Chinese)" then
	        table.insert(contents, p.newHeader("/J2ME version (Chinese)", "J2ME version (Chinese)"))
	    else
	    end
	end
	table.insert(contents, "|}")
	return table.concat(contents, "\n")
end

function p.main(frame)
	return p._main(getArgs(frame))
end

return p