Aller au contenu

Module:Entredoux Wikidata

De Vouiquipèdia, l’enciclopèdia abada.

La documentation pour ce module peut être créée à Module:Entredoux Wikidata/doc

local p = {}
local d = require 'Module:Wikidata'
local entities = require 'Module:Wikidata/Formatâjo entitât'
local tools = require 'Module:Wikidata/Outils'
local analysis = require 'Module:Wikidata/Analise transitiva'
local util = require "Module:Utilitèro Wikidata"


-- fonccions que pôvont étre apelâyes ren que dês un ôtro modulo
p.fromLua = {
	
	-- manipulacion d’una lista d’afirmacions
	getClaims = d.getClaims,
	stringTable = d.stringTable,
	tableToText = d.tableToText,
	formatStatements = d.formatStatements,
	formatQualifiers = d.showQualifier,
	formatAndCat = d.formatAndCat,
	wikidataDate = d.wikidataDate,
	addLinkback = d.addLinkback,
	addtrackingcat = d.addtrackingcat,
	
	-- manipulacion d’un’afirmacion endividuèla
	getmainid = tools.getMainId,
	formatStatement = d.formatStatement,
	statementDate = d.getFormattedDate, -- rècupère la dâta des qualificatifs
	getFormattedQualifiers = d.getFormattedQualifiers,
	getQualifiers = d.getQualifiers,
	getReferences = d.getReferences,

	-- manipulacion de snaks	
	getid = tools.getId,
	formatSnak = d.formatSnak,
	
	-- usâjo de qids
	getEntity = tools.getEntity,
	formatEntity = entities.formatEntity,
	getLink = entities.getLink,
	getLabel = entities.getLabel, --getLabel est ples simplo que formatEntity

	-- usâjo de les propriètâts transitives
	isInstance = analysis.isInstance,
	isSubclass = analysis.isSubclass,
	addVals = analysis.addVals,
	transitiveVals = analysis.transitiveVals,
	inTransitiveVals = analysis.inTransitiveVals,

	-- maneyance de les dâtes
	mainDate = util.maindate,
	getDate = d.getTheDate,
	keyDate = util.keydate,

	-- Fonccions de totes sôrtes
	citeItem = d.citeitem,
	Dump = d.Dump,
}

-- Fonccions frame por usâjo dês lo Vouiquitèxto (avouéc des côps des chouèx por maneyér de balyês muens prôpres
local function cleanargs(args)
	local newargs = {}
	for i, j in pairs(args) do
		if j ~= '' then
			newargs[i] = j
		end
	end
	return newargs
end


function p.formatStatements( frame ) -- por [[Modèlo:Wikidata]]
	local args = {}
	if frame == mw.getCurrentFrame() then
		args = frame:getParent().args -- paramètros du modèlo qu’apèle (est-o franc na bôn’idê ?)
		for k, v in pairs(frame.args) do
			args[k] = v
		end
	else
		args = frame
	end
	return p.fromLua.formatStatements( args )
end

function p.formatEntity(frame)
	local args = cleanargs(frame.args)
	local entity = args.entity or args[1]
	if (not entity) or (entity == '') then
		entity = mw.wikibase.getEntityObject()
	end
	return p.fromLua.formatEntity(entity, args)
end

function p.formatAndCat(frame)
	local args = cleanargs(frame.args)
	return p.fromLua.formatAndCat(args)
end

function p.citeItem(frame)
	local args = cleanargs(frame.args)
	local item, page = args[1], args['page']
	return p.fromLua.citeItem(item, page)
end

function p.getLabel(frame)
	local args = cleanargs(frame.args)
	local item = args[1]
	local lang = args[2] or "frp"
	return p.fromLua.getLabel(item, lang)
end


function p.mainDate(frame)
	return p.fromLua.mainDate(frame.args['entity'])	
end

function p.Dump(frame)
	return p.fromLua.Dump(frame.args[1])
end

function p.formatQualifiers(frame)
	local args = frame.args
	return p.fromLua.formatQualifiers(args)
end
return p