Fara í innihald

Module:Næstu kosningar og manntal

Úr Wikipediu, frjálsa alfræðiritinu

Þessi skrifta tekur dagsetningar frá öðrum sniðum og finnur út hvenær næstu kosningar og manntal er. Tilgangurinn er að finna hvaða greinar séu með úreldar upplýsingar.

{{#invoke:Næstu kosningar og manntal|main|land|ár þingkosninga|ár forsetakosninga|ár manntals}}

Skriftan þolir það að gefið sé upp dagsetning í stað árs. Gefur frá sér flokkana "Flokkur:Úreldar þingkosninga upplýsingar", "Flokkur:Úreldar forsetakosninga upplýsingar" og "Flokkur:Úreldar manntals upplýsingar", eftir því sem við á.

Breytingar

[breyta frumkóða]

Skriftan notar tvær stórar töflur

local countries = {
["land"] = {'ár milli þingkosninga', 'ár milli forsetakosninga', 'ár manntals', 'ár milli manntala'}
}

Ár manntals er uppreiknað, þannig það þurfi ekki að uppfæra það. Ef ár manntals er 1990, ár milli manntala 10 og nýjasta manntal er 2000 þá gefur skriftan réttar upplýsingar. Ef ár manntals er 1990, ár milli manntala 10 og nýjasta manntalið er 2001, þá gefur skriftan sér að manntalið hafi átt sér stað árið 2000.


Tafla fyrir lönd sem þarf ekki að uppfæra upplýsingar um meirihluta þings í landi, vegna stríðs, eins flokks kerfis, einræðis, o.s.frv.

local lowFairness = {
["land"] = 1
}

Töflurnar byggja á en:Population and housing censuses by country og en:List of next general elections, auk uppfærðra upplýsinga á þeim.

staða manntals 2024 (ekki tæmandi)

  • Stafræn talning: Danmörk, Finnland, Ísland, Noregur, Holland, Slóvenía, Sviss
  • Lönd eftir á, sbr. venju/reglur lands: Thaíland
  • Talning í gangi: Nambía, Indland

local countries = {
	--Afríka
	["Algería"] = {"5", "5"},
["Angóla"] = {"5", "5"},
["Benín"] = {"4", "5"},
["Botsvana"] = {"5", ""},
["Búrkína Fasó"] = {"5", "5"},
["Búrúndí"] = {"5", "7"},
["Kamerún"] = {"5", "7"},
["Grænhöfðaeyjar"] = {"5", "5"},
["Mið-Afríkulýðveldið"] = {"5", "5"},
["Tjad"] = {"5", "5"},
["Kómorur"] = {"5", "5"},
["Lýðstjórnarlýðveldið Kongó"] = {"5", "5"},
["Lýðveldið Kongó"] = {"5", "5"},
["Djibútí"] = {"5", "5"},
["Egyptaland"] = {"5", "6"},
["Miðbaugs-Gínea"] = {"5", "7"},
["Erítrea"] = {"", ""},
["Esvatíní"] = {"5", ""},
["Eþíópía"] = {"5", "6"},
["Gabon"] = {"5", "5"},
["Gambía"] = {"5", "5"},
["Gana"] = {"4", "4"},
["Gínea"] = {"5", "6"},
["Gínea-Bissá"] = {"4", "5"},
["Fílabeinsströndin"] = {"5", "5"},
["Kenía"] = {"5", "5", "2019", "10"},
["Lesótó"] = {"5", ""},
["Líbería"] = {"6", "6"},
["Líbía"] = {"4", "5"},
["Madagaskar"] = {"5", "5"},
["Malaví"] = {"5", "5"},
["Malí"] = {"5", "5"},
["Máritanía"] = {"5", "5"},
["Máritíus"] = {"5", "5"},
["Morokkó"] = {"5", ""},
["Mósambík"] = {"5", "5"},
["Nambía"] = {"5", "5", "2024", "10"},
["Níger"] = {"5", "5"},
["Nígería"] = {"4", "4"},
["Rúanda"] = {"5", "5"},
["Sahrawi-lýðveldið"] = {"3", "3"},
["Saó Tóme og Prinsípe"] = {"4", "5"},
["Senegal"] = {"5", "5"},
["Seychelles-eyjar"] = {"5", "5"},
["Síerra Leóne"] = {"5", "5"},
["Sómalía"] = {"4", "5"},
["Sómalíland"] = {"5", "5"},
["Suður-Afríka"] = {"5", ""},
["Suður-Súdan"] = {"4", "4"},
["Súdan"] = {"5", "5"},
["Tansanía"] = {"5", "5"},
["Tógó"] = {"5", "5"},
["Túnasía"] = {"5", "5"},
["Úganda"] = {"5", "5"},
["Sambía"] = {"5", "5"},
["Simbabve"] = {"5", "5"},
--Ameríka
["Antígva og Barbúda"] = {"5", ""},
["Argentína"] = {"2", "4", "2022", "10"},
["Bahamaeyjar"] = {"5", ""},
["Barbados"] = {"5", "4"},
["Belís"] = {"5", ""},
["Bólívía"] = {"5", "5"},
["Brasilía"] = {"4", "4", "2022", "10"},
["Kanada"] = {"4", ""},
["Síle"] = {"4", "4", "2022", "10"},
["Kólombía"] = {"4", "4"},
["Kosta Ríka"] = {"4", "4"},
["Kúba"] = {"5", "5"},
["Dóminíka"] = {"5", "5"},
["Dóminíska lýðveldið"] = {"4", "4"},
["Ekvador"] = {"4", "4"},
["El Salvador"] = {"3", "5"},
["Grenada"] = {"5", ""},
["Gvatemala"] = {"4", "4"},
["Gvæjana"] = {"5", "5"},
["Haítí"] = {"4", "5"},
["Hondúras"] = {"4", "4"},
["Jamaíka"] = {"5", ""},
["Mexíkó"] = {"3", "6"},
["Níkaragva"] = {"5", "5"},
["Panama"] = {"5", "5"},
["Paragvæ"] = {"5", "5"},
["Perú"] = {"5", "5"},
["Sankti Kristófer og Nevis"] = {"5", ""},
["Sankti Lúsía"] = {"5", ""},
["Sankti Vinsent og Grenadínur"] = {"5", ""},
["Súrínam"] = {"5", "5"},
["Trínidad og Tóbagó"] = {"5", "5"},
["Bandaríkin"] = {"2", "4", "2020", "10"},
["Úrúgvæ"] = {"5", "5"},
["Venúsela"] = {"5", "6"},
--Asía
["Afganistan"] = {"", ""},
["Barein"] = {"4", ""},
["Bangladess"] = {"5", "5"},
["Bútan"] = {"5", ""},
["Brúnei"] = {"", ""},
["Kambódía"] = {"5", ""},
["Kína"] = {"5", "5"},
["Austur-Tímor"] = {"5", "5"},
["Hong Kong"] = {"4", "5"},
["Indland"] = {"5", "5", "2025", "10"},
["Indónesía"] = {"5", "5", "2020", "10"},
["Íran"] = {"4", "4", "2016", "10"},
["Írak"] = {"4", "4"},
["Ísrael"] = {"4", "7"},
["Japan"] = {"4", "", "2020", "5"},
["Jórdanía"] = {"4", ""},
["Kasakstan"] = {"5", "7"},
["Kúveit"] = {"4", ""},
["Kirgistan"] = {"5", "6"},
["Laos"] = {"5", ""},
["Líbanon"] = {"4", "6"},
["Makaó"] = {"4", "5"},
["Malasía"] = {"5", "", "2020", "10"},
["Maldívur"] = {"5", "5"},
["Mongólía"] = {"4", "6"},
["Mjanmar"] = {"5", ""},
["Nepal"] = {"5", "5", "2021", "10"},
["Norður-Kórea"] = {"5", ""},
["Óman"] = {"4", ""},
["Pakistan"] = {"5", "5"},
["Palestína"] = {"4", "4"},
["Filippseyjar"] = {"3", "6", "2020", "5"},
["Katar"] = {"4", ""},
["Sádi Arabía"] = {"", ""},
["Singapúr"] = {"5", "6", "2020", "10"},
["Suður-Kórea"] = {"4", "5", "2020", "5"},
["Srí Lanka"] = {"5", "5", "2021", "10"},
["Sýrland"] = {"4", "7"},
["Taívan"] = {"4", "4"},
["Tadsíkistan"] = {"5", "7"},
["Taíland"] = {"4", "", "2010", "30"},
["Túrkmenistan"] = {"5", "7"},
["Sameinuðu arabísku furstadæmin"] = {"4", ""},
["Úsbekistan"] = {"5", "7"},
["Víetnam"] = {"5", ""},
["Jemen"] = {"6", ""},
--Evrópa
["Abkasía"] = {"5", "5"},
["Albanía"] = {"4", "5"},
["Andorra"] = {"4", ""},
["Armenía"] = {"5", "7"},
["Austurríki"] = {"5", "6", "2021", "10"},
["Aserbaísjan"] = {"5", "7"},
["Hvíta-Rússland"] = {"4", "5"},
["Belgía"] = {"5", "", "2021", "10"},
["Bosnía og Hersegóvína"] = {"4", "4"},
["Búlgaría"] = {"4", "4"},
["Króatía"] = {"4", "5", "2021", "10"},
["Kýpur"] = {"5", "5"},
["Tékkland"] = {"4", "5", "2021", "10"},
["Danmörk"] = {"4", "", "1970", "1"},
["Eistland"] = {"4", "5"},
["Evrópusambandið"] = {"5", ""},
["Finnland"] = {"4", "6", "", "3"},
["Frakkland"] = {"5", "5", "2020", "5"},
["Georgía"] = {"4", "6"},
["Þýskaland"] = {"4", "5"},
["Grikkland"] = {"4", "5", "2021", "10"},
["Ungverjaland"] = {"4", "5"},
["Ísland"] = {"4", "4", "", "1"},
["Írland"] = {"5", "7", "2022", "10"},
["Ítalía"] = {"5", "7", "2021", "10"},
["Kosóvó"] = {"4", "5"},
["Lettland"] = {"4", "4"},
["Liechtenstein"] = {"4", ""},
["Litháen"] = {"4", "5"},
["Lúxemborg"] = {"5", ""},
["Malta"] = {"5", "5"},
["Moldóva"] = {"4", "4"},
["Mónakó"] = {"5", ""},
["Svartfjallaland"] = {"4", "5"},
["Holland"] = {"4", "", "1971", "10"},
["Norður-Makedónía"] = {"4", "5", "2021", "10"},
["Norður-Kýpur"] = {"4", "5"},
["Noregur"] = {"4", "", "2001", "10"},
["Pólland"] = {"4", "5", "2021", "10"},
["Portúgal"] = {"4", "5", "2021", "10"},
["Rúmenía"] = {"4", "5", "2021", "10"},
["Rússland"] = {"5", "6", "2010", "20"},
["San Marínó"] = {"5", ""},
["Serbía"] = {"4", "5", "2022", "10"},
["Slóvakía"] = {"4", "5", "2022", "10"},
["Slóvenía"] = {"4", "5", "2021", "10"},
["Suður-Ossetía"] = {"5", "5"},
["Spánn"] = {"4", "", "2022", "10"},
["Svíþjóð"] = {"4", ""},
["Sviss"] = {"4", "1", "2023", "1"},
["Transnistría"] = {"5", "5"},
["Tyrkland"] = {"5", "5", "2000", "10"},
["Úkraína"] = {"5", "5"},
["Stóra-Bretland"] = {"5", "", "2021", "10"},
["Vatíkanið"] = {"", ""},
--Eyjaálfa
["Ástralía"] = {"3", "", "2021", "5"},
["Cooks-eyjar"] = {"4", ""},
["Fídjí"] = {"4", "3"},
["Kíribatí"] = {"4", "4"},
["Marshalleyjar"] = {"4", "4"},
["Míkrónesía (ríki)"] = {"2", "4"},
["Naúrú"] = {"3", "3"},
["Nýja-Sjáland"] = {"3", "", "2023", "5"},
["Niue"] = {"3", ""},
["Palaú"] = {"4", "4"},
["Papúa Nýja-Gínea"] = {"5", ""},
["Samóa"] = {"5", "5"},
["Salómonseyjar"] = {"4", ""},
["Tonga"] = {"4", ""},
["Túvalú"] = {"4", ""},
["Vanúatú"] = {"4", "5"}
	
}

local lowFairness = {
	--Afríka
['Erítrea'] = 1, ['Sahrawi-lýðveldið'] = 1, ['Miðbaugs-Gínea'] = 1, ['Rúanda'] = 1, ['Angóla'] = 1, 
['Zimbabwe'] = 1, ['Algería'] = 1, ['Botsvana'] = 1, ['Búrúndí'] = 1, 
['Kamerún'] = 1, ['Lýðstjórnarlýðveldið Kongó'] = 1, ['Lýðveldið Kongó'] = 1, 
['Djibútí'] = 1, ['Eþíópía'] = 1, ['Morokkó'] = 1, ['Mósambík'] = 1, ['Nambía'] = 1, ['Tansanía'] = 1,
['Tógó'] = 1, ['Úganda'] = 1,
--Afríka skammtíma
['Búrkína Fasó'] = 1, ['Gabon'] = 1, ['Gínea'] = 1, ['Malí'] = 1, ['Níger'] = 1, ['Mið-Afríkulýðveldið'] = 1, ['Súdan'] = 1,
--Ameríka
['Kúba'] = 1, ['Bólívía'] = 1, ['Dóminíka'] = 1, ['Paragvæ'] = 1, ['Sankti Vinsent og Grenadínur'] = 1,
--Asía
['Pakistan'] = 1, ['Jemen'] = 1, ['Kína'] = 1, ['Laos'] = 1, ['Norður-Kórea'] = 1, ['Víetnam'] = 1, ['Bangladess'] = 1, ['Japan'] = 1, ['Singapúr'] = 1,
--Evrópa skammtíma
['Úkraína'] = 1, 
--Evrópa
['Aserbaísjan'] = 1, ['Transnistría'] = 1, ['Ungverjaland'] = 1
}
local p = {}
local dags = require("Module:Tími")

function p.main(frame)
	local config = frame.args
	return p._main(config[1], config[2], config[3], config[4], config[5])
end

function p._main(land, parliament, president, censusyr, revdate)
	revdate = tonumber(revdate)
	local cats = {}
	if land and lowFairness[land] == nil and countries[land] ~= nil then
		local curdate = tonumber(os.date('%Y'))
		if parliament and countries[land][1] ~= "" then
			parliament = tonumber(dags._main("Y", parliament))
			if parliament + countries[land][1] < curdate and revdate < curdate then
				local parliamentnext = parliament + countries[land][1]
				while (parliamentnext < revdate) do
					parliamentnext = parliamentnext + countries[land][1]
				end
				if parliamentnext + 1 < curdate then
					table.insert(cats, 1, "y")
				end
			end
		end
		if president and countries[land][2] ~= "" then
			president = tonumber(dags._main("Y", president))
			if president + countries[land][2] < curdate then
				local presidentnext = president + countries[land][2]
				while (presidentnext < revdate) do
					presidentnext = presidentnext + countries[land][2]
				end
				if presidentnext + 1 < curdate then
					table.insert(cats, 2, "y")
				end
			end
		end
		if censusyr and countries[land][3] ~= nil and countries[land][4] ~= nil and countries[land][3] ~= "" and 
		countries[land][4] ~= "" then
			censusyr = tonumber(dags._main("Y", censusyr))
			if censusyr + countries[land][4] + 1 < curdate then
				table.insert(cats, 3, "y")
			end
		end
	end
	local categories = {
		[1] = "Flokkur:Úreldar þingkosninga upplýsingar",
		[2] = "Flokkur:Úreldar forsetakosninga upplýsingar",
		[3] = "Flokkur:Úreldar manntals upplýsingar"
	}
	local i = 1
	local out = ""
	if cats[1] then
		out = out .. "[[" .. categories[1] .. "]]"
	end
	if cats[2] then
		out = out .. "[[" .. categories[2] .. "]]"
	end
	if cats[3] then
		out = out .. "[[" .. categories[3] .. "]]"
	end
	return out
end

return p