Module:Team appearances list: Difference between revisions

Content deleted Content added
update from sandbox with logic to switch to the current name if an "old name" is used
also check for AIN at the 2026 Olympics
 
(53 intermediate revisions by 3 users not shown)
Line 60:
options.competition = valid_text('competition')
options.team = valid_text('team')
-- Check ROC/TPE
if options.team=='Republic of China' then
local pageYear = tonumber(mw.ustring.match(mw.title.getCurrentTitle().text, '[%d]+')) -- mw.title.getCurrentTitle().text:match('^%d+')
if pageYear and pageYear > 1950 and pageYear < 1980 then
options.team = 'Chinese Taipei'
end
end
-- end of ROC/TPE check
options.competitions = data_competitions[options.competition] or data_competitions[data_old_names[options.competition]]
local begin_optional
Line 180 ⟶ 188:
 
local function gameName(year, inputName)
-- Modifies output of display being sent back to the hlistlist
-- for games that have had a name change but are still considered
-- the same competition.
Line 202 ⟶ 210:
return "Commonwealth Games"
end
elseif inputName=="Southeast Asian Peninsular Games"
or inputName=="Southeast Asian Games" then
or inputName=="SEAP Games"
if year <= 1975 then
or inputName=="SEA Games" then
return "Southeast Asian Peninsular Games"
if year <= 1975 then
else
return "Southeast AsianSEAP Games"
end else
return "SEA Games"
end
elseif inputName=="Asian Indoor Games" or inputName=="Asian Indoor and Martial Arts Games" then
if year <= 2009 then
Line 225 ⟶ 236:
else
return "African Games"
end
elseif inputName=="Summer Universiade" or inputName=="Summer World University Games" then
if year < 2021 then
return "Summer Universiade"
else
return "Summer World University Games"
end
elseif inputName=="Winter Universiade" or inputName=="Winter World University Games" then
if year < 2021 then
return "Winter Universiade"
else
return "Winter World University Games"
end
else
Line 231 ⟶ 254:
end
 
local function teamName(year, inputName, comp)
-- Modifies output of display being sent back to the hlistlist
-- for games that have had a name change but are still considered
-- the same competition.
if inputName=="Eswatini" or inputName=="Swaziland" then
if year < 2018 or year == 2018 and comp == 'Commonwealth Games' then
return "Swaziland"
else
return "Eswatini"
end
elseif inputName=="Southern Rhodesia" or inputName=="Rhodesia" or inputName=="Zimbabwe" then
if year < 1980 then
if (comp=="British Empire Games"
or comp=="British Empire and Commonwealth Games"
or comp=="British Commonwealth Games"
or comp=="Commonwealth Games") then
return "Southern Rhodesia"
elseif comp=="Summer Olympics" or comp=="Summer Paralympics" then
return "Rhodesia"
end
else
return "Zimbabwe"
end
elseif (inputName=="Republic of China"
or inputName=="Formosa"
or inputName=="Taiwan"
or inputName=="Chinese Taipei") then
if year <= 1956 or year == 1972 or year == 1976 then
return "Republic of China"
elseif year==1960 then
return "Republic of China (Formosa)"
elseif year==1964 or year==1968 then
return "Taiwan"
elseif year > 1976 then
return "Chinese Taipei"
end
elseif inputName=="Northern Rhodesia" or inputName=="Zambia" then
if year <= 1964 then
return "Northern Rhodesia"
else
return "Zambia"
end
elseif inputName=="Aden" or inputName=="South Arabia" or inputName=="Federation of South Arabia" then
if year < 1966 then
return "Aden"
else
return "South Arabia"
end
elseif inputName=="British Guiana" or inputName=="Guyana" then
if year < 1966 then
return "British Guiana"
else
return "Guyana"
end
elseif inputName=="Tanzania" or inputName=="Tanganyika" then
if year < 1966 then
return "Tanganyika"
else
return "Tanzania"
end
elseif inputName=="Ceylon" or inputName=="Sri Lanka" then
if year <= 1972 then
return "Ceylon"
else
return "Sri Lanka"
end
elseif inputName=="British Honduras" or inputName=="Belize" then
if year <= 1973 then
return "British Honduras"
else
return "Belize"
end
elseif inputName=="Dahomey" or inputName=="Benin" then
if year <= 1975 then
return "Dahomey"
else
return "Benin"
end
elseif inputName=="Upper Volta" or inputName=="Burkina Faso" then
if year <= 1983 then
Line 247 ⟶ 338:
return "Burkina Faso"
end
elseif inputName=="Democratic Republic of the CongoBurma" or inputName=="ZaireMyanmar" then
if year >=< 1984 and year <=19961990 then
return "Burma"
else
return "Myanmar"
end
elseif inputName=="Germany" or inputName=="West Germany" then
if comp == "Summer Paralympics" or comp == "Winter Paralympics" then
if year < 1992 then
return "West Germany"
else
return "Germany"
end
end
elseif inputName=="Democratic Republic of the Congo" or inputName=="Zaire" or inputName=="Congo-Kinshasa" then
if year < 1971 then
return "Congo-Kinshasa"
elseif year >= 1971 and year <=1996 then
return "Zaire"
else
return "Democratic Republic of the Congo"
end
elseif (inputName=="Individual Olympic Athletes"
else
returnor inputName=="Independent Olympic Athletes"
or inputName=="Independent Olympic Participants"
or inputName=="Olympic Athletes from Russia"
or inputName=="ROC"
or inputName=="Individual Neutral Athletes") then
if year == 1992 or year==2014 then
return "Independent Olympic Participants"
elseif year == 2000 then
return "Individual Olympic Athletes"
elseif year == 2012 or year==2016 then
return "Independent Olympic Athletes"
elseif year == 2018 then
return "Olympic Athletes from Russia"
elseif year == 2020 then
return "Russian Olympic Committee athletes"
elseif year == 2024 or year==2026 then
return "Individual Neutral Athletes"
else
return inputName
end
elseif inputName=="Serbia and Montenegro" or inputName=="FR Yugoslavia" then
if year < 2004 then
if comp == "Mediterranean Games" then
return "FR Yugoslavia"
else
return "Yugoslavia"
end
else
return "Serbia and Montenegro"
end
elseif (inputName=="Refugee Olympic Team"
or inputName=="IOC Refugee Olympic Team") then
if year == 2016 then
return "Refugee Olympic Team"
elseif year == 2020 then
return "IOC Refugee Olympic Team"
else
return inputName
end
elseif (inputName=="Independent Paralympic Participants"
or inputName=="Individual Paralympic Athletes"
or inputName=="Independent Paralympic Athletes"
or inputName=="RPC"
or inputName=="Neutral Paralympic Athletes") then
if year == 1992 then
return "Independent Paralympic Participants"
elseif year == 2000 then
return "Individual Paralympic Athletes"
elseif year==2016 then
return "Independent Paralympic Athletes"
elseif year==2018 then
return "Neutral Paralympic Athletes"
elseif year == 2020 or year==2022 then
return "Russian Paralympic Committee athletes"
elseif year == 2024 then
return "Neutral Paralympic Athletes"
else
return inputName
end
elseif inputName=="North Macedonia" or inputName=="Macedonia" then
if year < 2019 then
return "Macedonia"
else
return "North Macedonia"
end
elseif inputName=="Malaysia" or inputName=="Malaya" then
if year < 1963 then
return "Malaya"
else
return "Malaysia"
end
elseif inputName=="Ghana" or inputName=="Gold Coast" then
if year < 1957 then
return "Gold Coast"
else
return "Ghana"
end
elseif inputName=="Independent FINA Athletes"
or inputName=="FINA Refugee Team"
or inputName=="FINA athletes" then
if year==2017 or year==2019 then
return "Independent FINA Athletes"
elseif year==2022 then
return "FINA Refugee Team"
else
return "FINA athletes"
end
end
return inputName
end
 
function p._main(args)
load_data() -- in case this function is called by another module
local hlistlist = require('Module:List').horizontal
local competitions, disqualified_years, absent_years, absent_ranges = competition_information(args)
local current_year = os.date('!*t').year
Line 301 ⟶ 496:
end
local compName = gameName(y, args.competition)
local teamOut = teamName(y, args.team, args.competition)
if compName == 'FIS Alpine World Ski Championships' then
table.insert(appearances, string.format(
'[[%s at the %s %d|%s]]',
teamOut, compName, y, display
))
else
table.insert(appearances, string.format(
'[[%s at the %d %s|%s]]',
teamOut, y, compName, display
))
end
end
end
end
return list(appearances)
end
 
function p._onlyGames(args)
load_data() -- in case this function is called by another module
local list = require('Module:List').horizontal
args.team = 'x'
local competitions, disqualified_years, absent_years, absent_ranges = competition_information(args)
local current_year = os.date('!*t').year
local appearances = {}
local absent_first, absent_last
for i = 1, #competitions + 1 do -- +1 to handle any trailing absences
local y = competitions[i]
if y then
local display = tostring(y)
if y > current_year then
display = '<i>' .. display .. '</i>'
end
local compName = gameName(y, args.competition)
if compName == 'FIS Alpine World Ski Championships' then
table.insert(appearances, string.format(
'[[%s at the %d %s|%s]]',
teamOutcompName, y, compName, display
))
else
table.insert(appearances, string.format(
'[[%d %s|%s]]',
y, compName, display
))
end
end
end
return hlistlist(appearances)
end
 
function p.main(frame)
load_data(frame)
return p._main(frame.args['team'] and frame.args or frame:getParent().args)
end
 
function p.onlyGames(frame)
load_data(frame)
return p._onlyGames(frame.args['competition'] and frame.args or frame:getParent().args)
end