Module:Sports table/totalscheck
Jump to navigation
Jump to search
File:Test Template Info-Icon - Version (2).svg Module documentation[view] [edit] [history] [purge]
| Warning | This Lua module is used on approximately 50,000 pages and changes may be widely noticed. Test changes in the module's /sandbox or /testcases subpages, or in your own module sandbox. Consider discussing changes on the talk page before implementing them. |
| Page template-protected | This module is currently protected from editing. See the protection policy and protection log for more details. Please discuss any changes on the talk page; you may submit an edit request to ask an administrator to make an edit if it is uncontroversial or supported by consensus. You may also request that this page be unprotected. |
Usage
{{#invoke:Sports table/totalscheck|function_name}}
local tc = {}
function tc.check(Args, team_list, ii_start, ii_end)
local warn = {}
local wtotal, dtotal, ltotal = 0,0,0
local hwtotal, hdtotal, hltotal = 0,0,0
local awtotal, adtotal, altotal = 0,0,0
local pkwtotal, pkltotal, otwtotal, otltotal = 0,0,0,0
local gftotal, gatotal = 0,0
for ii = ii_start, ii_end do
-- First get code
local team_code_ii = team_list[ii]
if team_code_ii ~= 'SPORTS_TABLE_TOTAL' then
-- Now tabulate values
wtotal = wtotal + (tonumber(Args['win_'..team_code_ii]) or 0)
dtotal = dtotal + (tonumber(Args['draw_'..team_code_ii]) or 0)
ltotal = ltotal + (tonumber(Args['loss_'..team_code_ii]) or 0)
hwtotal = hwtotal + (tonumber(Args['hwin_'..team_code_ii]) or 0)
hdtotal = hdtotal + (tonumber(Args['hdraw_'..team_code_ii]) or 0)
hltotal = hltotal + (tonumber(Args['hloss_'..team_code_ii]) or 0)
awtotal = awtotal + (tonumber(Args['awin_'..team_code_ii]) or 0)
adtotal = adtotal + (tonumber(Args['adraw_'..team_code_ii]) or 0)
altotal = altotal + (tonumber(Args['aloss_'..team_code_ii]) or 0)
pkwtotal = pkwtotal + (tonumber(Args['PKwin_'..team_code_ii]) or 0)
pkltotal = pkltotal + (tonumber(Args['PKloss_'..team_code_ii]) or 0)
otwtotal = otwtotal + (tonumber(Args['OTwin_'..team_code_ii]) or 0)
otltotal = otltotal + (tonumber(Args['OTloss_'..team_code_ii]) or 0)
gftotal = gftotal + (tonumber(Args['gf_'..team_code_ii]) or 0) + (tonumber(Args['pf_'..team_code_ii]) or 0)
gatotal = gatotal + (tonumber(Args['ga_'..team_code_ii]) or 0) + (tonumber(Args['pa_'..team_code_ii]) or 0)
end
end
if wtotal ~= ltotal then
table.insert(warn, wtotal .. ' total wins != ' .. ltotal .. ' total losses')
end
if hwtotal ~= altotal then
table.insert(warn, hwtotal .. ' total hwins != ' .. altotal .. ' total alosses')
end
if awtotal ~= hltotal then
table.insert(warn, awtotal .. ' total awins != ' .. hltotal .. ' total hlosses')
end
if (2*math.floor(dtotal/2)) ~= dtotal then
table.insert(warn, dtotal .. ' total draws is an odd number')
end
if hdtotal ~= adtotal then
table.insert(warn, hdtotal .. ' total hdraw != ' .. adtotal .. ' total adraw')
end
if pkwtotal ~= pkltotal then
table.insert(warn, pkwtotal .. ' total PKwins != ' .. pkltotal .. ' total PKlosses')
end
if otwtotal ~= otltotal then
table.insert(warn, otwtotal .. ' total OTwins != ' .. otltotal .. ' total OTlosses')
end
if gftotal ~= gatotal then
table.insert(warn, gftotal .. ' total for != ' .. gatotal .. ' total against')
end
return warn
end
return tc