Modul:Wb: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
imported>Juergen.Kett |
imported>Juergen.Kett |
||
| Zeile 20: | Zeile 20: | ||
return "init Entity" | return "init Entity" | ||
end | end | ||
| + | if not p.entity then | ||
| + | return "Entity still nil" | ||
| + | end | ||
| + | |||
p.nextStatement() | p.nextStatement() | ||
return p.value | return p.value | ||
Version vom 29. Mai 2020, 11:03 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Wb/Doku erstellt werden
local p = {};
p.id = nil;
p.entity = nil;
p.claims = nil;
p.keys = {};
p.index = 1;
p.property = nil;
p.value = nil;
p.qualifier = nil;
p.getNextStatement = function(frame)
p.id = frame.args.id
if not p.id then
return ""
end
if not p.entity then
p.initEntity(p.id)
return "init Entity"
end
if not p.entity then
return "Entity still nil"
end
p.nextStatement()
return p.value
end
function p.initEntity(qid)
p.entity = mw.wikibase.getEntity(qid)
p.claims = p.entity["claims"]
-- p.i, p.v = next(p.claims, nil)
-- mw.logObject(p.entity)
p.keys = {}
p.index=1
local i = 1
for k in pairs(p.claims) do
p.keys[i]=k
i = i + 1
end
mw.logObject(p.keys)
end
function p.nextStatement()
p.property = p.keys[p.index]
mw.log(p.property)
if p.property then
claim = p.claims[p.property]
snak = claim[1]["mainsnak"]
p.value = mw.wikibase.renderSnak(snak)
mw.logObject(p.value)
p.index = p.index + 1
end
end
p.getLabel = function (frame)
local pid = frame.args.pid
local label = mw.wikibase.getLabel(pid)
return label
end
return p