Aller au contenu

Module:Population de France/Sources/Test

Une page de Wikipédia, l'encyclopédie libre.

 Documentation[voir] [modifier] [historique] [purger]

Utilisation[modifier le code]

Fonctions dédiées à la génération des textes de sources des tableaux.
Les fonctions à appeler sont :

  • p.sources(data) : retourne les sources (sous forme de texte) d'un tableau de population pour l'entité dont les données sont dans data.
  • p.sources_graphique(data) : retourne les sources (sous forme de texte) d'un graphique de population pour l'entité dont les données sont dans data.

Les autres fonctions sont des sous-fonctions dédiées à une partie des traitements.

--[[
  Sous-module de Module:Tableau population d'article de commune de France contenant
  les fonctions de génération des sources associées à des données de population
--]]

local p = {}

p.outils = require("Module:Population de France/Outils/Test")

--[[  if (data["premier"] >= 2013) → nouveau
--]]
function p.source_canton(data)
	local resu
	if (data["premier"] >= 2013) then
		-- nouveau canton
		resu = "Base [[Institut national de la statistique et des études économiques|Insee]], population municipale à partir de 2006"
		local txt = "Fiches Insee - Populations légales de la commune " .. p.outils.liste_annees(data)
		resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", content = txt .. ".", args = nil } .. "."
	else  -- sinon canton plus ancien
		resu = "Base [[Institut national de la statistique et des études économiques|Insee]], [[Chiffres de population de la France|population sans doubles comptes]] à partir de 1962"
		resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref",
			   content = "[https://www.insee.fr/fr/statistiques/1893204 Population selon le sexe et l'âge quinquennal de 1968 à 2013 - Recensements harmonisés - Séries départementales et communales]",
			   args = nil }
		resu = resu .. " puis [[Chiffres de population de la France#La population municipale|population municipale]] à partir de 2006"
		local txt = "Fiches Insee - Populations légales de la commune " .. p.outils.liste_annees(data)
		resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", content = txt .. ".", args = nil } .. "."
	end
	return resu
end

--[[
--]]
function p.source_arrondissement(data)
	return p.source_canton(data) -- c'est le même
end

--[[
--]]
function p.source_departement(data)
	local resu = "SPLAF - population totale du département depuis sa création jusqu'en 1962"
	resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", content = "[http://splaf.free.fr/ Site sur la Population et les Limites Administratives de la France - fiche historique du département]",
		   args = nil }
	resu = resu .. " − puis base Insee − population sans doubles comptes de 1968 à 2006"
	resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", content = "[https://www.insee.fr/fr/statistiques/1893204 Population selon le sexe et l'âge quinquennal de 1968 à 2013 - Recensements harmonisés - Séries départementales et communales]",
		   args = nil }
	resu = resu .. " puis population municipale à partir de 2006"
	local txt = "Fiches Insee - Populations légales de la commune " .. p.outils.liste_annees(data)
	resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", content = txt, args = nil } .. "."
	return resu
end

--[[
--]]
function p.source_region(data)
	return p.source_canton(data)
end

--[[
  Sous-fonction de celle ci-dessous : génère la référence Cassini
--]]
function p.source_cassini(data)
	local resu = "Ldh/[[École des hautes études en sciences sociales|EHESS]]/Cassini jusqu'en 1999"
	local txt = ""
	if (data["source1"] ~= nil) then
		txt = txt .. "[" .. data["source1"] ..
		   " Des villages de Cassini aux communes d'aujourd'hui] sur le site de l'[[École des hautes études en sciences sociales]]."
		resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", content = txt, args = { name="Cassini" } }
	end
	return resu
end

--[[
  Sous-fonction de celle ci-dessous : génère la référence INSEE
--]]
function p.source_insee(data, prem)
	local resu = "[[Institut national de la statistique et des études économiques|Insee]] à partir de "
	if (prem) then
		resu = resu .. data["premier"]
	else
		resu = resu .. "2006"
	end
	local txt = "Fiches Insee - Populations légales de la commune " .. p.outils.liste_annees(data)
	resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", content = txt .. ".", args = nil }
	return resu
end

--[[
  fonction générant les sources
--]]
function p.sources(data, vnom)
	local resu
	
	-- on aiguille type autres que commune
	if (data["division"] == "canton") then
		return p.source_canton(data)
	end
	if (data["division"] == "département") then
		return p.source_departement(data)
	end
	if (data["division"] == "arrondissement") then
		return p.source_arrondissement(data)
	end
	if (data["division"] == "région") then
		return p.source_region(data)
	end
	if (data["division"] == "pays") then
		return nil -- par prudence
	end
	
	-- selon le type (commune) // note : en fait les communes n'ont pas de "division"…
	if ((data["division"] == "commune en DROM")) then
		resu = "[[Institut national de la statistique et des études économiques|Insee]] de 1968 à 2006"
		resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", args = nil,
			content = "[https://www.insee.fr/fr/statistiques/1893204 Population selon le sexe et l'âge quinquennal de 1968 à 2013 - Recensements harmonisés - Séries départementales et communales]" }
		resu = resu .. " puis à partir de 2006" .. mw.getCurrentFrame():extensionTag{ name = "ref", args = nil, content = p.outils.liste_annees(data) }
	elseif ((data["division"] == "commune nouvelle")) then
		resu = p.source_insee(data, true) .. "."
	elseif (data["division"] == "commune en COM2") then
		resu = "[[Institut de la statistique de la Polynésie française]]" .. mw.getCurrentFrame():extensionTag{ name = "ref", args = nil,
			     content = p.outils.liste_annees(data) } .. "."
	elseif (data["division"] == "commune en COM1") then
		resu = "Base [[Institut national de la statistique et des études économiques|Insee]], [[Chiffres de population de la France|population sans doubles comptes]]"
		resu = resu .. " jusqu'en 1999"
		if (data["source1"] ~= nil) then
			resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", args = nil,
			     content = "[" .. data["source1"] .. " " .. data["source1"] .. "]" }
		end
		resu = resu .. " puis population municipale à partir de 2006"
		resu = resu .. mw.getCurrentFrame():extensionTag{ name = "ref", args = nil,
			     content = p.outils.liste_annees(data) } .. "."
	else -- par défaut
		resu = p.source_cassini(data)
		resu = resu .. " puis " .. p.source_insee(data) .. "."
	end
	if ((data["sources"] ~= nil) and (data["sources"] ~= "")) then
		resu = resu .. " " .. data["sources"]
	end

	return resu
end

-- sources pour les graphiques
function p.sources_graphique(data, nom)
	local resu
	if ((data["division"] == "canton") or (data["division"] == "région") or
		(data["division"] == "arrondissement") or (data["division"] == "commune nouvelle") or
		(data["division"] == "commune en DROM") or (data["division"] == "commune en COM1") or
		(data["division"] == "commune en COM3")) then
		resu = "base Insee."
	elseif (data["division"] == "commune en COM2") then
		resu = "base IsPf."
	elseif (data["division"] == "département") then
		resu = "SPLAF et base Insee."
	else -- commune + commune nouvelle
		resu = "base Cassini de l'EHESS et base Insee."
	end
	return resu
end


return p