Jump to content

Module:Sandbox/SiBr4

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by SiBr4 (talk | contribs) at 23:13, 6 February 2016. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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 p = "Template:Country data "..c
    local link
    if require('Module:Redirect').luaIsRedirect(p) then
      link = "["..mw.title.new(p):fullUrl("redirect=no").." "..p.."]"
    else
      link = "[["..p.."]]"
    end
    local var = args["var"..n] or ""
    local vartext = var=="" and "" or " (<code>"..var.."</code> variant)"
    local note = args["note"..n] or ""

    local row = list:tag("tr")
    row:tag("td"):css("padding","0px 10px"):addClass("plainlinks"):wikitext(link..vartext)
    row:tag("td"):css("padding","0px 10px"):wikitext(require("Module:Flagg").luaMain(frame,{"usc", c, variant=(var)}))
    row:tag("td"):css("padding","0px 10px"):wikitext(note)
  end
end

local head = ""
if args["header"] and args["header"]~="" then
  if args["header"]=="related" then
    head = "====Related templates====\nPlease see the following related <code>country_data</code> templates:\n"
  elseif string.sub(args["header"],1,4)=="for:" then
    head = "<code>Country_data</code> templates are also available for "..string.sub(args["header"],4,-1)..":\n"
  else
    head = args["header"].."\n"
  end
end

return head..tostring(list)

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