มอดูล:Flagg/Altvar data

local p = {}
function p.alttable(age)
local alt_map = {
"af"={altlink="อเมริกันฟุตบอลทีมชาติ";altvar="American football"};
"afu"={altlink="อเมริกันฟุตบอลเยาวชนทีมชาติ";altvar="American football"};
"afw"={altlink="อเมริกันฟุตบอลหญิงทีมชาติ";altvar="American football"};
"arf"={altlink="ออสเตรเลียนฟุตบอลทีมชาติ";altvar="Australian rules football";mw="men's"};
"arfw"={altlink="ออสเตรเลียนฟุตบอลหญิงทีมชาติ";altvar="Australian rules football";mw="women's"};
"bandy"={altlink="แบนดีทีมชาติ";altvar="bandy"};
"bandyw"={altlink="แบนดีหญิงทีมชาติ";altvar="bandy";template="bandyW"};
"bb"={altlink="เบสบอลทีมชาติ";altvar="baseball"};
"bbstate"={altlink="เบสบอลทีมมหาวิทยาลัย";altvar="baseball";template="bb-state"};
"bbw"={altlink="เบสบอลหญิงทีมชาติ";altvar="baseball"};
"bd"={altlink="แบดมินตันทีมชาติ";altvar="badminton"};
"bs"={altlink="ฟุตบอลชายหาดทีมชาติ";altvar="beach soccer";template="beachsoccer"};
"bsw"={altlink="ฟุตบอลชายหาดหญิงทีมชาติ";altvar="women's beach soccer";template="beachsoccerwomen"};
"bh"={altlink="แฮนด์บอลชายหาดทีมชาติ";altvar="beach handball"};
"bhw"={altlink="แฮนด์บอลชายหาดหญิงทีมชาติ";altvar="beach handball";mw="women's"};
"bk"={altlink="บาสเกตบอลทีมชาติ";altvar="basketball"};
"bku"={altlink="บาสเกตบอลทีมชาติ";altvar="basketball";age="รุ่นอายุไม่เกิน "..age.." ปี"};
"bkw"={altlink="บาสเกตบอลหญิงทีมชาติ";altvar="basketball";mw="women's"};
"bkwu"={altlink="บาสเกตบอลหญิงทีมชาติ";altvar="basketball";mw="women's";age="รุ่นอายุไม่เกิน "..age.." ปี"};
"cr"={altlink="คริกเก็ตทีมชาติ";altvar="cricket"};
"cr19"={altlink="คริกเก็ตทีมชาติ";altvar="cricket";age="รุ่นอายุไม่เกิน 19 ปี"};
"crw"={altlink="คริกเก็ตหญิงทีมชาติ";altvar="cricket";mw="women's"};
"davis"={altlink="เทนนิสเดวิสคัพทีมชาติ";altvar="tennis";mw="Davis"};
"fb"={altlink="ฟุตบอลทีมชาติ";altvar="football"};
"fba"={altlink="สมาคมฟุตบอล";altvar="football"};
"fbl"={altlink="A' national football team";altvar="football";mw="A'"};
"fbm"={altlink="ฟุตบอลกองทัพ";altvar="football"};
"fbo"={altlink="ฟุตบอลโอลิมปิกทีมชาติ";altvar="football";mw="Olympic"};
"fbu"={altlink="ฟุตบอลทีมชาติ";altvar="football";age="รุ่นอายุไม่เกิน "..age.." ปี"};
"fbw"={altlink="ฟุตบอลหญิงทีมชาติ";altvar="football";mw="women's"};
"fbwm"={altlink="ฟุตบอลหญิงกองทัพ";altvar="football";mw="women's"};
"fbwu"={altlink="ฟุตบอลหญิงทีมชาติ";altvar="football";mw="women's";age="รุ่นอายุไม่เกิน "..age.." ปี"};
"fed"={altlink="เทนนิสเฟดคัพทีมชาติ";altvar="tennis";mw="Fed"};
"fhm"={altlink="ฮอกกี้ชายทีมชาติ";altvar="field hockey";mw="men's"};
"fhw"={altlink="ฮอกกี้หญิงทีมชาติ";altvar="field hockey";mw="women's"};
"fl"={altlink="ฟลอร์บอลชายทีมชาติ";altvar="floorball";mw="men's"};
"flu"={altlink="ฟลอร์บอลชายทีมชาติ";altvar="floorball";mw="men's";age="รุ่นอายุไม่เกิน 19 ปี"};
"flw"={altlink="ฟลอร์บอลหญิงทีมชาติ";altvar="floorball";mw="women's"};
"flwu"={altlink="ฟลอร์บอลหญิงทีมชาติ";altvar="floorball";mw="women's";age="รุ่นอายุไม่เกิน 19 ปี";template="flw19"};
"fsw"={altlink="ฟุตซอลหญิงทีมชาติ";altvar="futsal";mw="women's"};
"fs"={altlink="ฟุตซอลทีมชาติ";altvar="futsal";template="futsal"};
"gb"={altlink="โกลบอลชายทีมชาติ";altvar="goalball";mw="men's"};
"gbw"={altlink="โกลบอลหญิงทีมชาติ";altvar="goalball";mw="women's"};
"hb"={altlink="แฮนด์บอลทีมชาติ";altvar="handball"};
"hbj"={altlink="แฮนด์บอลเยาวชนทีมชาติ";altvar="handball";age="รุ่นอายุไม่เกิน 20 ปี"};
"hbw"={altlink="แฮนด์บอลหญิงทีมชาติ";altvar="handball";mw="women's"};
"hbwj"={altlink="แฮนด์บอลเยาวชนหญิงทีมชาติ";altvar="handball";age="รุ่นอายุไม่เกิน 19 ปี"};
"hbwy"={altlink="แฮนด์บอลเยาวชนหญิงทีมชาติ";altvar="handball";mw="women's";age="รุ่นอายุไม่เกิน 17 ปี"};
"hby"={altlink="แฮนด์บอลเยาวชนทีมชาติ";altvar="handball";age="รุ่นอายุไม่เกิน 18 ปี"};
"hopman"={altlink="เทนนิสฮอปแมนคัพทีมชาติ";altvar="tennis";mw="Hopman"};
"iflm"={altlink="ลาครอสชายทีมชาติ";altvar="lacrosse";mw="men's"};
"iflw"={altlink="ลาครอสหญิงทีมชาติ";altvar="lacrosse";mw="women's"};
"iflwu"={altlink="ลาครอสหญิงทีมชาติ";altvar="lacrosse";mw="women's";template="iflwu19";age="รุ่นอายุไม่เกิน 19 ปี"};
"ih"={altlink="ฮอกกี้น้ำแข็งทีมชาติ";altvar="ice hockey";mw="men's"};
"ih18"={altlink="ฮอกกี้น้ำแข็งทีมชาติ";altvar="ice hockey";mw="men's";age="รุ่นอายุไม่เกิน 18 ปี"};
"ihj"={altlink="ฮอกกี้น้ำแข็งเยาวชนทีมชาติ";altvar="ice hockey";mw="men's";age="junior"};
"ihw"={altlink="ฮอกกี้น้ำแข็งหญิงทีมชาติ";altvar="ice hockey";mw="women's"};
"ihw18"={altlink="ฮอกกี้น้ำแข็งหญิงทีมชาติ";altvar="ice hockey";mw="women's";age="รุ่นอายุไม่เกิน 18 ปี"};
"iih"={altlink="ฮอกกี้อินไลน์ชายทีมชาติ";altvar="inline hockey"};
"iihj"={altlink="ฮอกกี้อินไลน์เยาวชนชายทีมชาติ";altvar="inline hockey";mw="junior"};
"iihw"={altlink="ฮอกกี้อินไลน์หญิงทีมชาติ";altvar="inline hockey";mw="women's"};
"iil"={altlink="ลาครอสในร่มทีมชาติ";altvar="lacrosse";mw="men's"};
"ish"={altlink="ฮอกกี้น้ำแข็งคนพิการทีมชาติ";altvar="sledge hockey"};
"kd"={altlink="กาบัดดี้ทีมชาติ";altvar="Kabaddi"};
"korf"={altlink="คอร์ฟบอลทีมชาติ";altvar="korfball"};
"nb"={altlink="เน็ตบอลทีมชาติ";altvar="netball"};
"p&p"={altlink="พิตช์แอนด์พัตต์ชายทีมชาติ";altvar="pitch and putt"};
"rhm"={altlink="โรลเลอร์ฮอกกี้ทีมชาติ";altvar="roller hockey";mw="men's"};
"rhw"={altlink="โรลเลอร์ฮอกกี้หญิงทีมชาติ";altvar="roller hockey";mw="women's"};
"rl"={altlink="รักบี้ลีกทีมชาติ";altvar="rugby league"};
"rollerderby"={altlink="โรลเลอร์เดอร์บีทีมชาติ";altvar="roller derby";template="RollerDerby"};
"ru"={altlink="รักบี้ยูเนียนทีมชาติ";altvar="rugby union"};
"ru7"={altlink="รักบี้ 7 คนทีมชาติ";altvar="rugby sevens"};
"ru7w"={altlink="รักบี้ 7 คนหญิงทีมชาติ";altvar="rugby sevens";mw="women's"};
"rua"={altlink="A national rugby union team";altvar="rugby union-a";template="ruA"};
"ruu"={altlink="รักบี้ยูเนียนทีมชาติ";altvar="rugby union";age="รุ่นอายุไม่เกิน "..age.." ปี"};
"ruw"={altlink="รักบี้ยูเนียนหญิงทีมชาติ";altvar="rugby union";mw="women's"};
"sb"={altlink="ซอฟต์บอลชายทีมชาติ";altvar="softball";mw="men's"};
"sbw"={altlink="ซอฟต์บอลหญิงทีมชาติ";altvar="softball";mw="women's"};
"speedway"={altlink="สปีดเวย์ทีมชาติ";altvar="speedway"};
"speedwaylt"={altlink="ลองแทร็กทีมชาติ";altvar="long track";template="speedwayLT"};
"svb"={altlink="วอลเลย์บอลคนพิการชายทีมชาติ";altvar="sitting volleyball";mw="men's"};
"svbw"={altlink="วอลเลย์บอลคนพิการหญิงทีมชาติ";altvar="sitting volleyball";mw="women's"};
"vb"={altlink="วอลเลย์บอลชายทีมชาติ";altvar="volleyball";mw="men's"};
"vbu"={altlink="วอลเลย์บอลชายทีมชาติ";altvar="volleyball";age="รุ่นอายุไม่เกิน "..age.." ปี"};
"vbw"={altlink="วอลเลย์บอลหญิงทีมชาติ";altvar="volleyball";mw="women's"};
"vbwu"={altlink="วอลเลย์บอลหญิงทีมชาติ";altvar="volleyball";mw="women's";age="รุ่นอายุไม่เกิน "..age.." ปี"};
"wbk"={altlink="บาสเกตบอลคนพิการชายทีมชาติ";altvar="wheelchair basketball"};
"wbkw"={altlink="บาสเกตบอลคนพิการหญิงทีมชาติ";altvar="wheelchair basketball";mw="women's"};
"whr"={altlink="รักบี้คนพิการทีมชาติ";altvar="wheelchair rugby"};
"wightman"={altlink="เทนนิสไวต์แมนคัพทีมชาติ";altvar="tennis";mw="Wightman"};
"wp"={altlink="โปโลน้ำชายทีมชาติ";altvar="water polo"};
"wpw"={altlink="โปโลน้ำหญิงทีมชาติ";altvar="water polo";mw="women's"};
"airforce"={altlink="กองทัพอากาศ";altvar="air force";template="air force"};
"army"={altlink="กองทัพบก";altvar="army"};
"navy"={altlink="กองทัพเรือ";altvar="naval"}
}
local alt_aliases = {
"a'football"="fbl";
"americanfootball"="af";
"australianrulesfootball"="arf";
"badminton"="bd";
"baseball"="bb";
"baseballstate"="bbstate";
"beachhandball"="bh";
"beachsoccer"="bs";
"beachsoccerwomen"="bsw";
"basketball"="bk";
"cricket"="cr";
"daviscup"="davis";
"fedcup"="fed";
"football"="fb";
"footballassociation"="fba";
"fh"="fhm";
"fieldhockey"="fhm";
"fl19"="flu";
"floorball"="fl";
"flw19"="flwu";
"flwu19"="flwu";
"futsal"="fs";
"goalball"="gb";
"handball"="hb";
"hopmancup"="hopman";
"icehockey"="ih";
"icesledgehockey"="ish";
"iflwu19"="iflwu";
"indoorlacrosse"="iil";
"inlinehockey"="iih";
"junioramericanfootball"="afu";
"juniorhandball"="hbj";
"junioricehockey"="ihj";
"juniorinlinehockey"="iihj";
"kabaddi"="kd";
"korfball"="korf";
"lacrosse"="iflm";
"men'sfieldhockey"="fhm";
"men'slacrosse"="iflm";
"militaryfootball"="fbm";
"netball"="nb";
"olympicfootball"="fbo";
"pitchandputt"="p&p";
"rollerhockey"="rhm";
"rugbyleague"="rl";
"rugbysevens"="ru7";
"rugbyunion"="ru";
"rugbyuniona"="rua";
"rugbyunionsevens"="ru7";
"softball"="sb";
"longtrack"="speedwaylt";
"sittingvolleyvall"="svb";
"under18icehockey"="ih18";
"under19cricket"="cr19";
"volleyball"="vb";
"waterpolo"="wp";
"wheelchairbasketball"="wbk";
"wheelchairrugby"="whr";
"wightmancup"="wightman";
"women'samericanfootball"="afw";
"women'saustralianrulesfootball"="arfw";
"women'sbandy"="bandyw";
"women'sbaseball"="bbw";
"women'sbasketball"="bkw";
"women'sbeachhandball"="bhw";
"women'sbeachsoccer"="bsw";
"women'scricket"="crw";
"women'sfieldhockey"="fhw";
"women'sfloorball"="flw";
"women'sfootball"="fbw";
"women'sfutsal"="fsw";
"women'sgoalball"="gbw";
"women'shandball"="hbw";
"women'sicehockey"="ihw";
"women'sinlinehockey"="iihw";
"women'srollerhockey"="rhw";
"women'sunder18icehockey"="ihw18";
"women'sjuniorhandball"="hbwj";
"women'slacrosse"="iflw";
"women'smilitaryfootball"="fbwm";
"women'srugbysevens"="ru7w";
"women'srugbyunion"="ruw";
"women'srugbyunionsevens"="ru7w";
"women'ssittingvolleyvall"="svbw";
"women'ssoftball"="sbw";
"women'svolleyball"="vbw";
"women'swaterpolo"="wpw";
"women'swheelchairbasketball"="wbkw";
"women'syouthbasketball"="bkwu";
"women'syouthfootball"="fbwu";
"women'syouthhandball"="hbwy";
"youthbasketball"="bku";
"youthcricket"="cr19";
"youthfootball"="fbu";
"youthhandball"="hby";
"youthrugbyunion"="ruu"
}
return alt_map, alt_aliases
end
function p.list_all(frame)
--Load data
local alt_map, alt_aliases = p.alttable("age")
--Add aliases to map table
for k,v in pairs(alt_map) do
alt_mapk.aliases = {}
end
local wrong_aliases = {}
table.sort(alt_aliases)
for k,v in pairs(alt_aliases) do
if alt_mapv
then table.insert(alt_mapv.aliases,k)
else table.insert(wrong_aliases,k)
end
end
--Create html table & header row
local list = mw.html.create("table")
list:addClass("wikitable sortable collapsible")
local head = list:tag("tr")
head:tag("th"):wikitext("Code")
head:tag("th"):wikitext("Aliases")
head:tag("th"):wikitext("Altlink (suffix)")
head:tag("th"):wikitext("Altvar")
head:tag("th"):wikitext("Template")
--Append rows to create table body
table.sort(alt_map)
for k,v in pairs(alt_map) do
local row = list:tag("tr")
local temp = alt_mapk.template or k
row:tag("td"):wikitext(""..k.."")
row:tag("td"):wikitext(""..table.concat(alt_mapk.aliases,"").."")
row:tag("td"):wikitext(alt_mapk.altlink)
row:tag("td"):wikitext(alt_mapk.altvar)
row:tag("td"):wikitext(""..temp.."")
end
if #wrong_aliases > 0 then
local wrong_list = "These aliases point to non-existing data: "..table.concat(wrong_aliases," ")..""
list:tag("tr"):tag("td"):attr("colspan","4"):css("color","red"):wikitext(wrong_list)
end
return list
end
return p