Modulo:PopolazioneIT

Modulo che implementa il template {{PopITA}}.

I dati della popolazione sono contenuti nella sottopagina: Modulo:PopolazioneIT/Data.


--[[
* Modulo che implementa il template PopolazioneIT.
]]--

require('Modulo:No globals')

local getArgs = require('Modulo:Arguments').getArgs
local mWikidata = require('Modulo:Wikidata')
local p = {}

-- Funzione per l'utilizzo da un altro modulo.
function p._main(args)
	local data = mw.loadData('Modulo:PopolazioneIT/Data')

	-- fonte
	if args[1] == 'n' then
		return mw.getCurrentFrame():expandTemplate{
			title = "Cita web",
			args = { 
				[1] = data.urlfonte,
				[2] = data.titolofonte,
				[3] = data.data
				}
			}
	end

	-- data
	if args[1] == 'd' then
		return data.data
	end

	-- valore, puro o con formatnum
	local ret
	local istatID = args.istatID or mWikidata._getProperty({ 'P635', from = args.from, n = 1 })
	if istatID then
		ret = data[istatID]
		if ret then
			if args[1] == 'f' then
				ret = mw.language.getContentLanguage():formatNum(ret)
			end
		end
	end
	return ret
end

-- Funzione per il template {{PopolazioneIT}}.
function p.main(frame)
	return p._main(getArgs(frame, { parentOnly = true }))
end

return p