Jump to content

Module:Broadcaster

From Wikipedia, the free encyclopedia

local getArgs = require('Module:Arguments').getArgs
local p = {}

--[[ EBU
0 = No affiliation
1 = Member
2 = Former Member
3 = Suspended

TODO:
4 = Associate
5 = Former Associate
6 = Approved participant
]]

local broadcasters = {
	['al/rtsh']      = {active=1, ebu=1, abbr='RTSH', name = 'Albanian Radio-Television'},
	['dz/eptv']      = {active=1, ebu=1, abbr='EPTV', name = 'Public Establishment of Television'},
	['dz/enrs']      = {active=1, ebu=1, abbr='ENRS', name = 'National Sound Broadcasting Company'},
	['dz/tda']       = {active=1, ebu=1, abbr='TDA', name = 'Algerian Broadcasting Company'},
	['ad/rtva']      = {active=1, ebu=1, abbr='RTVA', name = 'Radio and Television of Andorra'},
	['am/armtv']     = {active=1, ebu=1, abbr='ARMTV', name = 'Public Television Company of Armenia'},
	['am/armr']      = {active=1, ebu=1, abbr='ARMR', name = 'Public Radio of Armenia'},
	['au/sbs']       = {active=1, ebu=4, abbr='SBS', name = 'Special Broadcasting Service'},
	['at/orf']       = {active=1, ebu=1, abbr='ORF', name = 'Österreichischer Rundfunk'},
	['az/icti-itv']  = {active=1, ebu=1, abbr='İCTI-İTV', name = 'İctimai Televiziya və Radio Yayımları Şirkəti'},
	['az/itv']       = {active=1, ebu=1, abbr='İTV', name = 'İctimai Televiziya'},
	['az/ir']        = {active=1, ebu=1, abbr='İR', name = 'İctimai Radio'},
	['by/btrc']      = {active=1, ebu=3, abbr='BTRC', name = 'Belarusian Television and Radio Company'},
	['be/rtbf']      = {active=1, ebu=1, abbr='RTBF', name = 'Radio-télévision belge de la Communauté française'},
	['be/vrt']       = {active=1, ebu=1, abbr='VRT', name = 'Vlaamse Radio- en Televisieomroeporganisatie'},
	['ba/bhrt']      = {active=1, ebu=1, abbr='BHRT', name = 'Radio and Television of Bosnia and Herzegovina'},
	['bg/bnr']       = {active=1, ebu=1, abbr='BNR', name = 'Bulgarian National Radio'},
	['bg/bnt']       = {active=1, ebu=1, abbr='BNT', name = 'Bulgarian National Television'},
	['hr/hrt']       = {active=1, ebu=1, abbr='HRT', name = 'Croatian Radiotelevision'},
	['cy/cybc']      = {active=1, ebu=1, abbr='CyBC', name = 'Cyprus Broadcasting Corporation'},
	['cz/cro']       = {active=1, ebu=1, abbr='ČRo', name = 'Český rozhlas'},
	['cz/ct']        = {active=1, ebu=1, abbr='ČT', name = 'Česká televize'},
	['dk/dr']        = {active=1, ebu=1, abbr='DR', name = 'Danmarks Radio'},
	['dk/tv2']       = {active=1, ebu=1, abbr='TV2', name = 'TV2 Danmark'},
	['eg/ntu']       = {active=1, ebu=1, abbr='NTU', name = 'National Media Authority'},
	['ee/err']       = {active=1, ebu=1, abbr='ERR', name = 'Eesti Rahvusringhääling'},
	['ee/er']        = {active=1, ebu=2, abbr='ER', name = 'Eesti Raadio'},
	['ee/etv']       = {active=1, ebu=2, abbr='ETV', name = 'Eesti Televisioon'},
	['fi/mtv']       = {active=1, ebu=2, abbr='MTV', name = 'MTV3'},
	['fi/yle']       = {active=1, ebu=1, abbr='YLE', name = 'Yleisradio'},
	['fr/grf']       = {active=1, ebu=1, abbr='GRF', name = 'Groupe de Radiodiffusion Française'},
	['fr/ftv']       = {active=1, ebu=1, abbr='France Télévisions', name = 'France Télévisions'},
	['fr/rf']        = {active=1, ebu=1, abbr='RF', name = 'Radio France'},
	['fr/fmm']       = {active=1, ebu=1, abbr='FMM', name = 'France Médias Monde'},
	['fr/tdf']       = {active=1, ebu=2, abbr='TDF', name = 'Télédiffusion de France'},
	['fr/tf1']       = {active=1, ebu=2, abbr='TF1', name = 'Télévision Française 1'},
	['fr/e1']        = {active=1, ebu=2, abbr='E1', name = 'Europe 1'},
	['fr/c+']        = {active=1, ebu=2, abbr='C+', name = 'Canal+'},
	['ge/gpb']       = {active=1, ebu=1, abbr='GPB', name = 'Georgian Public Broadcaster'},
	['de/ard']       = {active=1, ebu=1, abbr='ARD', name = 'Arbeitsgemeinschaft der öffentlich-rechtlichen Rundfunkanstalten der Bundesrepublik Deutschland'},
	['de/br']        = {active=1, ebu=1, abbr='BR', name = 'Bayerischer Rundfunk'},
	['de/hr']        = {active=1, ebu=1, abbr='HR', name = 'Hessischer Rundfunk'},
	['de/mdr']       = {active=1, ebu=1, abbr='MDR', name = 'Mitteldeutscher Rundfunk'},
	['de/ndr']       = {active=1, ebu=1, abbr='NDR', name = 'Norddeutscher Rundfunk'},
	['de/rb']        = {active=1, ebu=1, abbr='RB', name = 'Radio Bremen'},
	['de/rbb']       = {active=1, ebu=1, abbr='RBB', name = 'Rundfunk Berlin-Brandenburg'},
	['de/sr']        = {active=1, ebu=1, abbr='SR', name = 'Saarländischer Rundfunk'},
	['de/swr']       = {active=1, ebu=1, abbr='SWR', name = 'Südwestrundfunk'},
	['de/wdr']       = {active=1, ebu=1, abbr='WDR', name = 'Westdeutscher Rundfunk'},
	['de/dw']        = {active=1, ebu=1, abbr='DW', name = 'Deutsche Welle'},
	['de/dlr']       = {active=1, ebu=1, abbr='DLR', name = 'Deutschlandradio'},
	['de/zdf']       = {active=1, ebu=1, abbr='ZDF', name = 'Zweites Deutsches Fernsehen'},
	['gr/ert']       = {active=1, ebu=1, abbr='ERT', name = 'Hellenic Broadcasting Corporation'},
	['hu/mtva']      = {active=1, ebu=1, abbr='MTVA', name = 'Médiaszolgáltatás-támogató és Vagyonkezelő Alap'},
	['hu/Duna']      = {active=1, ebu=1, abbr='Duna', name = 'Duna Média'},
	['hu/DunaTV']    = {active=1, ebu=2, abbr='DunaTV', name = 'Duna Televízió'},
	['is/ruv']       = {active=1, ebu=1, abbr='RÚV', name = 'Ríkisútvarpið'},
	['ie/rte']       = {active=1, ebu=1, abbr='RTÉ', name = 'Raidió Teilifís Éireann'},
	['ie/tg4']       = {active=1, ebu=1, abbr='TG4', name = 'TG4'},
	['il/kan']       = {active=1, ebu=1, abbr='KAN', name = 'Israeli Public Broadcasting Corporation'},
	['it/rai']       = {active=1, ebu=1, abbr='RAI', name = 'Radiotelevisione Italiana'},
	['jo/jrtv']      = {active=1, ebu=1, abbr='JRTV', name = 'Jordan Radio and Television Corporation'},
	['lv/lsm']       = {active=1, ebu=1, abbr='LSM', name = 'Public Broadcasting of Latvia'},
	['lv/ltv']       = {active=1, ebu=1, abbr='LTV', name = 'Latvijas Televīzija'},
	['lv/lr']        = {active=1, ebu=1, abbr='LR', name = 'Latvijas Radio'},
	['lb/tl']        = {active=1, ebu=1, abbr='TL', name = 'Télé Liban'},
	['ly/lnc']       = {active=1, ebu=1, abbr='LNC', name = 'Libya National Channel'},
	['lt/lrt']       = {active=1, ebu=1, abbr='LRT', name = 'Lithuanian National Radio and Television'},
	['lu/rtl']       = {active=1, ebu=1, abbr='RTL', name = 'RTL Group'},
	['lu/esrl']      = {active=1, ebu=1, abbr='ESRL', name = 'Établissement de Radiodiffusion Socioculturelle du Grand-Duché de Luxembourg'},
	['mt/pbs']       = {active=1, ebu=1, abbr='PBS', name = 'Public Broadcasting Services'},
	['md/trm']       = {active=1, ebu=1, abbr='TRM', name = 'Teleradio-Moldova'},
	['mc/mmd']       = {active=1, ebu=1, abbr='MMD', name = 'Monaco Media Diffusion'},
	['mc/tvm']       = {active=1, ebu=1, abbr='TVM', name = 'TVMonaco'},
	['me/rtcg']      = {active=1, ebu=1, abbr='RTCG', name = 'Radio i Televizija Crne Gore'},
	['ma/snrt']      = {active=1, ebu=1, abbr='SNRT', name = 'Société Nationale de Radiodiffusion et de Télévision'},
	['nl/npo']       = {active=1, ebu=1, abbr='NPO', name = 'Nederlandse Publieke Omroep'},
	['nl/bnnvara']   = {active=1, ebu=1, abbr='BNNVARA', name = 'BNNVARA'},
	['nl/avrotros']  = {active=1, ebu=1, abbr='AVROTROS', name = 'AVROTROS'},
	['nl/eo']        = {active=1, ebu=1, abbr='EO', name = 'Evangelische Omroep'},
	['nl/human']     = {active=1, ebu=1, abbr='HUMAN', name = 'Humanistische Omroep'},
	['nl/kro-ncrv']  = {active=1, ebu=1, abbr='KRO-NCRV', name = 'KRO-NCRV'},
	['nl/max']       = {active=1, ebu=1, abbr='MAX', name = 'Omroep MAX'},
	['nl/nos']       = {active=1, ebu=1, abbr='NOS', name = 'Nederlandse Omroep Stichting'},
	['nl/ntr']       = {active=1, ebu=1, abbr='NTR', name = 'NTR'},
	['nl/on']        = {active=1, ebu=1, abbr='ON', name = 'Ongehoord Nederland'},
	['nl/powned']    = {active=1, ebu=1, abbr='PowNed', name = 'PowNed'},
	['nl/ster']      = {active=1, ebu=1, abbr='STER', name = 'Stichting Ether Reclame'},
	['nl/vpro']      = {active=1, ebu=1, abbr='VPRO', name = 'Omroepvereniging VPRO'},
	['nl/wnl']       = {active=1, ebu=1, abbr='WNL', name = 'WNL'},
	['nl/zwart']     = {active=1, ebu=1, abbr='ZWART', name = 'Omroep Zwart'},
	['mk/mrt']       = {active=1, ebu=1, abbr='MRT', name = 'Macedonian Radio Television'},
	['no/nrk']       = {active=1, ebu=1, abbr='NRK', name = 'Norsk Rikskringkasting'},
	['no/tv2']       = {active=1, ebu=1, abbr='TV2', name = 'TV 2 Group'},
	['pl/tvp']       = {active=1, ebu=1, abbr='TVP', name = 'Telewizja Polska'},
	['pl/pr']        = {active=1, ebu=1, abbr='PR', name = 'Polskie Radio'},
	['pt/rtp']       = {active=1, ebu=1, abbr='RTP', name = 'Rádio e Televisão de Portugal'},
	['ro/ror']       = {active=1, ebu=1, abbr='ROR', name = 'Societatea Română de Radiodifuziune'},
	['ro/tvr']       = {active=1, ebu=1, abbr='TVR', name = 'Societatea Română de Televiziune'},
	['ru/c1r']       = {active=1, ebu=3, abbr='C1R', name = 'Channel One Russia'},
	['ru/rtr']       = {active=1, ebu=3, abbr='RTR', name = 'Russian Television and Radio'},
	['ru/rdo']       = {active=1, ebu=3, abbr='RDO', name = 'Radio Dom Ostankino'},
	['ru/mk']        = {active=1, ebu=3, abbr='MK', name = 'Radio Mayak'},
	['ru/op']        = {active=1, ebu=3, abbr='OP', name = 'Radio Orpheus'},
	['sm/smrtv']     = {active=1, ebu=1, abbr='SMRTV', name = 'San Marino RTV'},
	['rs/rts']       = {active=1, ebu=1, abbr='RTS', name = 'Radio-televizija Srbije'},
	['sk/stvr']      = {active=1, ebu=1, abbr='STVR', name = 'Slovak Television and Radio'},
	['si/rtvslo']    = {active=1, ebu=1, abbr='RTVSLO', name = 'Radiotelevizija Slovenija'},
	['es/rtve']      = {active=1, ebu=1, abbr='RTVE', name = 'Radiotelevisión Española'},
	['es/cope']      = {active=1, ebu=2, abbr='COPE', name = 'Cadena COPE'},
	['es/ser']       = {active=1, ebu=2, abbr='SER', name = 'Cadena SER'},
	['se/srt']       = {active=1, ebu=1, abbr='SRT', name = 'Sveriges Rundradiotjänst'},
	['se/svt']       = {active=1, ebu=1, abbr='SVT', name = 'Sveriges Television'},
	['se/sr']        = {active=1, ebu=1, abbr='SR', name = 'Sveriges Radio'},
	['se/ur']        = {active=1, ebu=1, abbr='UR', name = 'Sveriges Utbildningsradio'},
	['se/tv4']       = {active=1, ebu=2, abbr='TV4', name = 'TV4'},
	['ch/srg-ssr']   = {active=1, ebu=1, abbr='SRG SSR', name = 'Swiss Broadcasting Corporation'},
	['ch/srf']       = {active=1, ebu=1, abbr='SRF', name = 'Schweizer Radio und Fernsehen'},
	['ch/rts']       = {active=1, ebu=1, abbr='RTS', name = 'Radio Télévision Suisse'},
	['ch/rsi']       = {active=1, ebu=1, abbr='RSI', name = 'Radiotelevisione svizzera'},
	['ch/rtr']       = {active=1, ebu=1, abbr='RTR', name = 'Radiotelevisiun Svizra Rumantscha'},
	['tn/rt']        = {active=1, ebu=1, abbr='RT', name = 'Établissement de la Radio Tunisienne'},
	['tn/tt']        = {active=1, ebu=1, abbr='TT', name = 'Établissement de la Télévision Tunisienne'},
	['tr/trt']       = {active=1, ebu=1, abbr='TRT', name = 'Türkiye Radyo ve Televizyon Kurumu'},
	['ua/su']        = {active=1, ebu=1, abbr='SU', name = 'Suspilne Ukraina'},
	['gb/bbc']       = {active=1, ebu=1, abbr='BBC', name = 'British Broadcasting Corporation'},
	['gb/ukib']      = {active=1, ebu=1, abbr='UKIB', name = 'United Kingdom Independent Broadcasting'},
	['gb/itv']       = {active=1, ebu=1, abbr='ITV', name = 'ITV plc'},
	['gb/stv']       = {active=1, ebu=1, abbr='STV', name = 'STV Group'},
	['gb/c4']        = {active=1, ebu=1, abbr='C4', name = 'Channel Four Television Corporation'},
	['gb/s4c']       = {active=1, ebu=1, abbr='S4C', name = 'S4C Authority'},
	['va/vr']        = {active=1, ebu=1, abbr='VR', name = 'Vatican Radio'},
	-- Former Broadcasters
	['cshh/cst']     = {active=2, ebu=2, abbr='ČST', name = 'Czechoslovak Television'},
	['fr/rtf']       = {active=2, ebu=2, abbr='RTF', name = 'Radiodiffusion-Télévision Française'},
	['fr/ortf']      = {active=2, ebu=2, abbr='ORTF', name = 'Office de Radiodiffusion Télévision Française'},
	['fr/ofrt']      = {active=2, ebu=2, abbr='OFRT', name = 'Organisme Français de Radiodiffusion et de Télévision'},
	['gr/nerit']     = {active=2, ebu=2, abbr='NERIT', name = 'New Hellenic Radio, Internet and Television'},
	['hu/mr']        = {active=2, ebu=2, abbr='MR', name = 'Magyar Rádió'},
	['hu/mtv']       = {active=2, ebu=2, abbr='MTV', name = 'Magyar Televízió'},
	['il/iba']       = {active=2, ebu=2, abbr='IBA', name = 'Israel Broadcasting Authority'},
	['ly/ljbc']      = {active=2, ebu=2, abbr='LJBC', name = 'Libyan Jamahiriya Broadcasting Corporation'},
	['mt/mba']       = {active=2, ebu=2, abbr='MBA', name = 'Maltese Broadcasting Authority'},
	['mc/grmc']      = {active=2, ebu=2, abbr='GRMC', name = 'Groupement de Radiodiffuseurs Monégasques'},
	['mc/rmc']       = {active=2, ebu=2, abbr='RMC', name = 'Radio Monte Carlo'},
	['mc/tmc/fr']    = {active=2, ebu=2, abbr='TMC', name = 'Télé Monte-Carlo'},
	['mc/tmc/it']    = {active=2, ebu=2, abbr='TMC', name = 'Telemontecarlo'},
	['nl/nts']       = {active=2, ebu=2, abbr='NTS', name = 'Nederlandse Televisie Stichting'},
	['nl/nru']       = {active=2, ebu=2, abbr='NRU', name = 'Nederlandse Radio Unie'},
	['nl/tros']      = {active=2, ebu=2, abbr='TROS', name = 'Televisie Radio Omroep Stichting'},
	['ru/c1o']       = {active=2, ebu=2, abbr='C1O', name = 'Channel One Ostankino'},
	['csxx/ujrt']    = {active=2, ebu=2, abbr='UJRT', name = 'Udruženje javnih radija i televizija'},
	['sk/sro']       = {active=2, ebu=2, abbr='SRo', name = 'Slovenský rozhlas'},
	['sk/stv']       = {active=2, ebu=2, abbr='STV', name = 'Slovenská televízia'},
	['sk/rtvs']      = {active=2, ebu=2, abbr='RTVS', name = 'Radio and Television of Slovakia'},
	['es/a3r']       = {active=2, ebu=2, abbr='A3R', name = 'Antena 3 Radio'},
	['tn/ertt']      = {active=2, ebu=2, abbr='ERTT', name = 'Établissement de la radiodiffusion-télévision tunisienne'},
	['gb/ita']       = {active=2, ebu=2, abbr='ITA', name = 'Independent Television Authority'},
	['gb/itca']      = {active=2, ebu=2, abbr='ITCA', name = 'Independent Television Companies Association'},
	['gb/iba']       = {active=2, ebu=2, abbr='IBA', name = 'Independent Broadcasting Authority'},
	['gb/crca']      = {active=2, ebu=2, abbr='CRCA', name = 'Commercial Radio Companies Association'},
	['yucs/jrt']     = {active=2, ebu=2, abbr='JRT', name = 'Yugoslav Radio Television'}
}

function p.main(f)
	local args = getArgs(f)
	local req = string.lower(args[1])
	local att = args[2]
	local link = args['link']
	
	local result
	local name = broadcasters[req]['name']
	if att then
		result = broadcasters[req][att]
	else
		result = name
	end
	if link then
		result = '[['..name..'|'..result..']]'
	end
	
	return result
end

return p