« Module:Infobox/Localdata » : différence entre les versions

De USAC-CGT
Aller à la navigation Aller à la recherche
(retour de la possibilité de désactiver l'import des données avec wikidata = -)
 
(Tentative maladroite de correction de "Erreur Lua dans Module:Infobox/Localdata à la ligne 29 : attempt to index field 'wikibase' (a nil value)" (on n'a pas wikibase))
 
(Une version intermédiaire par le même utilisateur non affichée)
Ligne 27 : Ligne 27 :
localdata.item = localdata.wikidata
localdata.item = localdata.wikidata
else
else
localdata.item = mw.wikibase.getEntityIdForCurrentPage()
-- localdata.item = mw.wikibase.getEntityIdForCurrentPage()
localdata.item = "null"
end
end


return localdata
return localdata

Dernière version du 19 septembre 2023 à 17:36

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

local localdata = {}

local frame = mw.getCurrentFrame()
local modulename =  frame.args.nom
local parent = frame:getParent() or frame
local templatename = parent:getTitle() -- au cas où il soit différent du nom du module
local params = parent.args

-- fill-up table localdata using params
for k, v in pairs(params) do
	if type(k) == number then
		v = mw.text.trim(v)
	end
	if v ~= '' then -- empty parameters are ignored
		localdata[k] = v
	end
end
localdata.templatename = templatename
localdata.modulename = modulename

-- load wikidata item:
if localdata.wikidata
	and mw.wikibase.isValidEntityId( localdata.wikidata )
	and mw.wikibase.entityExists( localdata.wikidata )
	or localdata.wikidata == '-'
then
	localdata.item = localdata.wikidata
else
	-- localdata.item = mw.wikibase.getEntityIdForCurrentPage()
	localdata.item = "null"
end

return localdata