วิกิพีเดีย
มอดูล:Flagg/Altvar data
คู่มือการใช้งานมอดูล[สร้าง]
คุณอาจจะต้องการสร้างคู่มือการใช้งานของมอดูลนี้ ผู้เขียนสามารถทำการทดลองได้ที่กระบะทราย (สร้าง | คัดลอก) และชุดทดสอบ (สร้าง) ของมอดูลนี้ โปรดเพิ่มหมวดหมู่ไปที่หน้าย่อย /doc หน้าย่อยของมอดูลนี้ |
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("''<span style=\"color:green;\">age</span>''") --Add aliases to map table for k,v in pairs(alt_map) do alt_map[k].aliases = {} end local wrong_aliases = {} table.sort(alt_aliases) for k,v in pairs(alt_aliases) do if alt_map[v] then table.insert(alt_map[v].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_map[k].template or k row:tag("td"):wikitext("<code>"..k.."</code>") row:tag("td"):wikitext("<code>"..table.concat(alt_map[k].aliases,"</code><br/><code>").."</code>") row:tag("td"):wikitext(alt_map[k].altlink) row:tag("td"):wikitext(alt_map[k].altvar) row:tag("td"):wikitext("[[Template:"..temp.."|"..temp.."]]") end if #wrong_aliases > 0 then local wrong_list = "These aliases point to non-existing data: <code>"..table.concat(wrong_aliases,"</code> <code>").."</code>" list:tag("tr"):tag("td"):attr("colspan","4"):css("color","red"):wikitext(wrong_list) end return list end return p