Module:Sandbox/SiBr4
Appearance
local p = {}
-------------------------
function p.listdata(frame)
local args = require('Module:Arguments').getArgs(frame)
local map = {}
for k,v in pairs(args) do
if tonumber(k) ~= nil then
table.insert(map, k)
end
end
table.sort(map)
local list = mw.html.create('table')
list:css("background-color","#ecfcf4")
for n = 1, #map, 1 do
local row = list:tag("tr")
local c = args[map[n]]
local p = "Template:Country data "..c
local var = args["var"..map[n]]
local note = args["note"..map[n]]
local vartext
if var
then vartext = " (<code>"..var.."</code> variant)"
else vartext = ""
end
if require('Module:Redirect').luaIsRedirect(p)
then row:tag("td"):css("padding","0px 10px"):addClass("plainlinks"):wikitext("["..mw.title.new(p):fullUrl("redirect=no").." "..p.."]"..vartext)
else row:tag("td"):css("padding","0px 10px"):wikitext("[["..p.."]]"..vartext)
end
row:tag("td"):css("padding","0px 10px"):wikitext(frame:expandTemplate({title="flaglist", args={c, variant=(var or "")}}))
row:tag("td"):css("padding","0px 10px"):wikitext(note or "")
end
return list
end
function p.listdata2(frame)
local args = require('Module:Arguments').getArgs(frame,{removeBlanks=false})
local list = mw.html.create('table')
list:css("background-color","#ecfcf4")
for n,c in ipairs(args) do
if c ~= "" then
local row = list:tag("tr")
local p = "Template:Country data "..c
local var = args["var"..n]
local note = args["note"..n]
local vartext
if var
then vartext = " (<code>"..var.."</code> variant)"
else vartext = ""
end
if require('Module:Redirect').luaIsRedirect(p)
then row:tag("td"):css("padding","0px 10px"):addClass("plainlinks"):wikitext("["..mw.title.new(p):fullUrl("redirect=no").." "..p.."]"..vartext)
else row:tag("td"):css("padding","0px 10px"):wikitext("[["..p.."]]"..vartext)
end
row:tag("td"):css("padding","0px 10px"):wikitext(frame:expandTemplate({title="flaglist", args={c, variant=(var or "")}}))
row:tag("td"):css("padding","0px 10px"):wikitext(note or "")
end
end
return list
end
-------------------------
function p.rgnvbx(frame)
return require("Module:Region topic").main(frame)
end
function p.rtlist(frame)
local args = require("Module:Arguments").getArgs(frame)
local data
if args.data and args.data~=""
then data = mw.loadData(args.data)
else error("No data page specified")
end
local tab = mw.html.create("table"):addClass("wikitable collapsible"):css("color","#000")--:css("width","60%")
local head = tab:tag("tr"):css("font-weight","bold")
head:tag("th"):css("background-color","#e8e8e8"):wikitext("Code")
head:tag("th"):css("background-color","#e8e8e8"):wikitext("Display name [link name]")
head:tag("th"):css("background-color","#e8e8e8"):wikitext("Switch")
head:tag("th"):css("background-color","#e8e8e8"):wikitext("Hidden?")
for i = 1, (data.ngroups or 1), 1 do
local grow = tab:tag("tr"):css("background-color","#eaf1fe")
grow:tag("td")
if string.match(data["group"..i].name,"%{%{")
then grow:tag("td"):css("font-weight","bold"):wikitext(frame:preprocess(data["group"..i].name))
else grow:tag("td"):css("font-weight","bold"):wikitext(data["group"..i].name)
end
grow:tag("td"):wikitext(data["group"..i].switch or "")
grow:tag("td"):wikitext(data["group"..i].hidden and "Yes" or "")
for j,ddata in ipairs(data["group"..i].data) do
local drow = tab:tag("tr"):css("background-color","#f8f8f8")
drow:tag("td"):wikitext(ddata[1])
local dname = drow:tag("td"):css("padding-left","1em"):wikitext(ddata[2])
if ddata.the or ddata.link then
dname:wikitext(" ["..(ddata.the and "the" or "")..(ddata.the and ddata.link and " " or "")..(ddata.link or "").."]")
end
drow:tag("td"):wikitext(ddata.switch or "")
drow:tag("td"):wikitext(ddata.hidden and "Yes" or "")
if ddata.subgroup then
local shead = tab:tag("tr"):css("background-color","#fefce2")
shead:tag("td")
shead:tag("td"):css("padding-left","2em"):css("font-weight","bold"):wikitext("Subgroup")
shead:tag("td"):wikitext(ddata.subgroup.switch or "")
shead:tag("td"):wikitext(ddata.subgroup.hidden and "Yes" or "")
for k,sdata in ipairs(ddata.subgroup) do
local srow = tab:tag("tr"):css("background-color","#fdfcf4")
srow:tag("td"):wikitext(sdata[1])
srow:tag("td"):css("padding-left","2em"):css("font-style","italic"):wikitext(sdata[2])
srow:tag("td"):wikitext(sdata.switch or "")
srow:tag("td"):wikitext(sdata.hidden and "Yes" or "")
end
end
end
end
return tab
end
-------------------------
function p.ec(frame)
local p = frame:preprocess("{{Wikipedia:List of Wikipedians by number of edits/5001โ6000}}")
local i = string.find(p,"User:SiBr4")
if i then
return string.sub(p,i-10,i-6)
else
return "?"
end
end
-------------------------
function p.test(frame)
return ""
end
-------------------------
return p