Module:Hockey team color

-- -- This module implements (or will be implemented) -- -- local p = {}

local data_module = "Module:Hockey team color/data"

local function stripwhitespace(text) return text:match("^%s*(.-)%s*$") end

local function get_colors(team, unknown) team = stripwhitespace(team or '') unknown = unknown or {"DCDCDC", "FFFFFF", "000000", "000000"} local use_default = { [""] = 1,		["retired"] = 1, ["free agent"] = 1, }

local colors = nil if ( team and use_default[team:lower] ) then colors = {"DCDCDC", "FFFFFF", "DCDCDC", "000000"} else local all_colors = mw.loadData(data_module) colors = all_colors[team] if ( colors and type(colors) == 'string' ) then colors = all_colors[colors] end end

return colors or unknown end

local function team_color(team, num) local colors = get_colors(team, nil)

num = tonumber(num:match('[1-4]') or '0') if ( num ) then return colors[num] else return '' end end

function p.color(frame) local args = (frame.args[1] ~= nil) and frame.args or frame:getParent.args return team_color(args[1] or , args[2] or ) end

return p