Modul:Wikidata utilities: Unterschied zwischen den Versionen
new typeSearch
(+mw.wikibase.entityExists) |
(new typeSearch) |
||
Zeile 279: | Zeile 279: | ||
end | end | ||
function fw.typeSearch( p31, list | function fw.typeSearch( p31, list, catArray ) | ||
if not list or not p31 or #p31 == 0 then | |||
return 'error', catArray | |||
end | |||
local ids = {}, id, k, v | |||
for k,v in pairs( list ) do | |||
if mw.wikibase.isValidEntityId( k ) then | |||
table.insert( ids, k ) | |||
end | |||
end | |||
if #ids == 0 then | |||
return 'error', catArray | |||
end | |||
for | for k = 1, #p31, 1 do | ||
id = p31[ | id = p31[ k ].id | ||
v = list[ id ] | |||
if | if v then | ||
return | return v, catArray | ||
else | else | ||
v = mw.wikibase.getReferencedEntityId( id, 'P279', ids ) | |||
if v then | |||
if catArray then | |||
if | catArray[ 'P279' ] = '' | ||
end | end | ||
return list[ v ], catArray | |||
end | |||
end | end | ||
end | end |