Module:Sports results/blank
Jump to navigation
Jump to search
-- This module generates a blank invocation of the sports results module -- using the values of team1, team2, ... local p = {} local function isnotempty(s) return s and s:match( '^%s*(.-)%s*$' ) ~= '' end function p.main(frame) local args = (frame.args['team1'] ~= nil) and frame.args or frame:getParent().args local processed = {} -- Count the number of teams local numteams = 0 while isnotempty(args['team' .. (numteams + 1)]) do numteams = numteams + 1 end local res = '{{#invoke:sports results|main\n' if args['template_name'] then res = res .. '| template_name = ' .. (args['template_name'] or '<!-- to add v-t-e links -->') .. '\n' processed['template_name'] = 1 end res = res .. '| source = ' .. (args['source'] or '<!-- source -->') .. '\n' processed['source'] = 1 res = res .. '| update = ' .. (args['update'] or '<!-- last updated -->') .. '\n' processed['update'] = 1 if args['start_date'] then res = res .. '| start_date = ' .. args['start_date'] .. '\n' processed['start_date'] = 1 end if args['match_col_width'] then res = res .. '| match_col_width = ' .. args['match_col_width'] .. '\n' processed['match_col_width'] = 1 end if args['matches_style'] then res = res .. '| matches_style = ' .. args['matches_style'] .. '\n' processed['matches_style'] = 1 end if args['a_note'] then res = res .. '| a_note = ' .. args['a_note'] .. '\n' processed['a_note'] = 1 end if args['showteam'] then res = res .. '| showteam = ' .. (args['showteam'] or '<!-- for bolding one team results -->') .. '\n' processed['showteam'] = 1 end for i=1,numteams do local ab = args['team' .. i] processed['team' .. i] = 1 res = res .. '| team' .. i .. '= ' .. ab .. ' ' end res = res .. '\n\n' for i=1,numteams do local ab = args['team' .. i] res = res .. '| name_'..ab ..' = '.. (args['name_'..ab] or '') .. '\n' processed['name_'..ab] = 1 if (args['short_'..ab]) then res = res .. '| short_'..ab ..' = '.. (args['short_'..ab] or '') .. '\n' processed['short_'..ab] = 1 end end res = res .. '\n' for i=1,numteams do local abi = args['team' .. i] for j=1,numteams do local abj = args['team' .. j] if i ~= j then local mij = 'match_' .. abi .. '_' .. abj res = res .. '| ' .. mij .. ' = ' .. (args[mij] or '') .. '\n' processed[mij] = 1 end end res = res .. '\n' end local comment = '<!-- Other parameters -->\n' for k, v in pairs( args ) do if v ~=nil and processed[k] == nil then res = res .. comment .. '| ' .. k .. ' = ' .. v .. '\n' comment = '' end end res = res .. '}}' return res end return p