Module:Categoria pro annu

Documentation for this module may be created at Module:Categoria pro annu/doc

local p = {}

local DEFAULT_PROP = 'P571'
local DEFAULT_CHECK_CAT = 'Data de fundatzione o creatzione'
local DEFAULT_CHECK_GENRE = 'fs'

local function err(msg)
	string.format('<span class="error">msg</span>', msg)
end

function p._main(args)
	local s = ''

	args.cat = args[1] or args.cat

	if not args.cat then
		return err('paràmetru cat netzessàriu')
	end

	if not args.prop then
		args.prop = DEFAULT_PROP
	end

	local value = require('Module:Wikidata')._getProperty( {
		args.prop,
		args.value,
		from = args.from
	} )
	if value then
		local year = mw.ustring.match(value, '%d%d%d%d')
		if year then
			s = s .. string.format(
				args.raw and '%s' or '[[Categoria:%s]]',
				string.format(args.cat, year)
			)
		end
	end

	if not args.raw then
		if DEFAULT_PROP == args.prop and not args.checkCat then
			args.checkCat   = DEFAULT_CHECK_CAT
			args.checkGenre = DEFAULT_CHECK_GENRE
		end
		local check = require('Module:Verìfica Wikidata')._main( {
			args.prop,
			args.value,
			args.checkCat,
			genere  = args.checkGenre,
			ns = args.ns
		} )
		if check then
			s = s .. check
		end
	end

	return s
end

function p.main(frame)
	local getArgs = require('Module:Arguments').getArgs
	return p._main( getArgs(frame) )
end

return p