Module:Sports rbr table/matchup
From MicrasWiki
Jump to navigationJump to search
Usage
Basic usage
This module is an extension of Module:Sports rbr table, showing matchups and head-to-head results table.
In it's simplest form, only several parameters need to be used to build a table.
What you type | {{#invoke:Sports rbr table|table|style=matchup |team1=AAA |team2=BBB |team3=CCC |team4=DDD |team5=EEE |opp_AAA = TM2/TM3/TM4/TM5 |res_AAA = W / L /OTL/ W |opp_BBB = TM5/TM1/TM3/TM4 |res_BBB = L / L /OTW/ W |opp_CCC = TM4/TM5/TM1/TM2 |res_CCC = W / L / W /OTL |opp_DDD = TM3/TM2/TM1/TM5 |res_DDD = OTW/ L / L / L |opp_EEE = TM3/TM4/TM1/TM2 |res_EEE = W / W / L / W |name_AAA=[[Dream Team]] |name_BBB=Team 2 |name_CCC=Team 3 |name_DDD=Team 4 |name_EEE=Team 5 }} |
What it looks like | Source: [citation needed]
= Win; = Loss |
Parameters
General parameters
Style–specific parameters
Style–specific parameters | |
---|---|
Parameter | Description |
opp1 oropp_ABC |
The forward slash (/ ) delimited list of round-by-round opponents of the team. For example, |opp1=DEF/GHI/JKL/MNO/PQR/STU/VWX for seven games.
|
legend_style |
Legend colors and text to display based on usage. The default is WL . See the legend section below for more information on legend syntax.
|
rdrobin |
Number of times each team plays all other teams. The default is 1 (i.e. single round-robin).
|
ticon |
The name of the template to trigger to show teams' identity (e.g. three-letter codes, team colors, team icons) |
Legend
Key
The keys below correspond to res1
or res_ABC
usage: the forward slash (/
) delimited list of matchup results of the team.
For example, |res1=W/OTL/FW/W/L
for five games with the round-by-round results of win, OT loss, win by forfeit, win, loss.
Key | Legend color |
---|---|
W |
Win |
D |
Draw |
L |
Loss |
OTW |
OT win |
OTL |
OT loss |
FW |
Win by forfeit |
FL |
Loss by forfeit |
Style
Legend colors and text will be displayed based on usage.
Legend style | WL
|
WLF
|
BSK
|
BSKF
|
FBR
|
FBRF
|
---|---|---|---|---|---|---|
Colors |
|
|
|
|
|
|
Examples
(These examples use Philippine university teams.)
Example 1: Cells contain literal texts
What you type | {{#invoke:Sports rbr table|table|style=matchup|legend_style=FBR |team1 = ADM |name_ADM = Ateneo |team2 = DLZ |name_DLZ = DLSZ |team3 = FEU |name_FEU = FEU |team4 = NUI |name_NUI = NU |team5 = UST |name_UST = UST |opp_ADM = UST/NUI/DLS/FEU |res_ADM = W / W / L / D |opp_DLZ = NUI/ADM/FEU/UST |res_DLZ = L / W / L / L |opp_FEU = UST/NUI/DLS/ADM |res_FEU = W / W / W / D |opp_NUI = DLS/ADM/FEU/UST |res_NUI = W / L / L / D |opp_UST = ADM/FEU/NUI/DLS |res_UST = L / L / D / W }} |
What it looks like | Source: [citation needed]
= Win; = Draw; = Loss |
Example 2: Cells contain icons
TBD
Example 3: Double round-robin schedule
What you type | {{#invoke:Sports rbr table|table|style=matchup|rdrobin=2|legend_style=BSK |team1 = ADU |name_ADU = Adamson |team2 = ADM |name_ADM = Ateneo |team3 = DLS |name_DLS = La Salle |team4 = FEU |name_FEU = FEU |team5 = NUI |name_NUI = NU |team6 = UEA |name_UEA = UE |team7 = UPD |name_UPD = UP |team8 = UST |name_UST = UST |opp_ADU = ADM/NUI/UEA/UPD/UST/DLS/FEU/UEA/ADM/NUI/UPD/FEU/UST/DLS |res_ADU = L /OTW/ W /OTL/ W / L / L / L / L / W / L / L / L / L |opp_ADM = ADU/DLS/UST/FEU/NUI/UEA/UPD/UST/ADU/DLS/FEU/UEA/NUI/UPD |res_ADM = W / W / W / W / W / W / W / W / W / W / W / W / W / W |opp_DLS = ADM/NUI/UEA/FEU/ADU/UPD/UST/NUI/ADM/UEA/FEU/UST/UPD/ADU |res_DLS = L / W / L / L / W / L / W / W / L / W / L / W / L / W |opp_FEU = UPD/UEA/ADM/DLS/UST/NUI/ADU/UPD/NUI/UST/ADM/DLS/ADU/UEA |res_FEU = L / W / L / W / L / L / W /OTW/OTL/ W / L / W / W / W |opp_NUI = ADU/DLS/UST/UPD/ADM/FEU/UEA/DLS/FEU/ADU/UST/UPD/ADM/UEA |res_NUI = OTL/ L /OTL/ L / L / W / L / L /OTW/ L / L / L / L / L |opp_UEA = UST/FEU/ADU/DLS/UPD/ADM/NUI/ADU/UST/UPD/DLS/ADM/FEU/NUI |res_UEA = L / L / L / W / L / L / W / W / L / L / L / L / L / W |opp_UPD = FEU/UST/ADU/NUI/UEA/DLS/ADM/FEU/UEA/UST/ADU/NUI/DLS/ADM |res_UPD = W / L /OTW/ W / W / W / L /OTL/ W / L / W / W / W / L |opp_UST = UEA/UPD/ADM/NUI/ADU/FEU/DLS/ADM/UEA/FEU/UPD/NUI/DLS/ADU |res_UST = W / W / L /OTW/ L / W / L / L / W / L / W / W / L / W }} |
What it looks like | Source: [citation needed]
= Win; = OT win; = Loss; = OT loss |
local pp = {} local rdrobin, multirb local tblkey = { ['WL'] = 'W/L', ['WLF'] = 'W/FW/L/FL', ['BSK'] = 'W/OTW/L/OTL', ['BSKF'] = 'W/OTW/FW/L/OTL/FL', ['FBR'] = 'W/D/L', ['FBRF'] = 'W/FW/D/L/FL', } function pp.defaults(args,yesno,color_map) rdrobin = tonumber(args['rdrobin'] or 1) multirb = rdrobin >= 2 local legendtype = args['legend_style'] or 'WL' local opt_colors = { W = { 'Win', color_map.blue1 }, D = { 'Draw', color_map.yellow2 }, L = { 'Loss', color_map.red1 }, OTW = { 'OT win', color_map.blue3 }, OTL = { 'OT loss', color_map.red3 }, FW = { 'Win by forfeit', '#5CDEFD' }, FL = { 'Loss by forfeit', '#D98080' } } local colors = mw.text.split(mw.ustring.gsub(tblkey[legendtype], '</', '<FORWARDSLASH'), '%s*/%s*') for k=1,#colors do local legend = colors[k] args['color_' .. legend] = opt_colors[legend][2] args['text_' .. legend] = opt_colors[legend][1] end args['header'] = 'Team ╲ Game' args['legendpos'] = 'b' args['legendorder'] = args['legendorder'] or 'W/OTW/FW/D/L/OTL/FL' return args end function pp.addtl_args(k) return k == 'style' or k == 'legend_style' or k == 'rdrobin' or k == 'ticon' end function pp.get_argvalues_for_maxround(args,x,del) del = del or '' return args['pos' .. del .. x] or args['res' .. del .. x] or '' end function pp.get_rounds_or_maxrounds(rounds,maxrounds,args,team_list) if multirb then return (#team_list - 1) * rdrobin else return #team_list - 1 end end function pp.header(root,args,labels,maxrounds,navbar,team_list,firstround) local row = root:tag('tr') row:tag('th') :css('white-space', 'nowrap'):cssText('style') :wikitext((not multirb and (args['header'] or labels['teamround']) or ' ') .. navbar) -- if not a single round-robin if (multirb) then for r=1,rdrobin do row:tag('th') :addClass('sportsrbrtable-rnd') :attr('scope', 'col') :attr('colspan', #team_list - 1) :wikitext('Round ' .. r) end row = root:tag('tr') row:tag('th') :css('white-space', 'nowrap'):cssText('style') :wikitext(args['header'] or labels['teamround']) end for r=1,maxrounds do row:tag('th') :addClass('sportsrbrtable-rnd') :attr('scope', 'col') :css('width', (args['ticon'] == nil) and (args['rdwidth'] or '35px') or nil) :wikitext(args['rnd' .. (r + (firstround - 1))] or (r + (firstround - 1))) end return row end function pp.rowtext(frame,args,legend_symbols,posrt,opprt) if args['ticon'] then return frame:expandTemplate{ title = args['ticon'], args = { opprt } } else return opprt end return legend_symbols[posrt] or posrt end function pp.rowbg(posrc,opprt) return (opprt ~= '') and posrc or '' end function pp.legendtext(legend_symbols,v) return ' ' end return pp