Modul:Test: Unterschied zwischen den Versionen

Aus STA Dokumentationsplattform
Zur Navigation springen Zur Suche springen
imported>Admin
imported>Juergen.Kett
 
(7 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 2: Zeile 2:
  
 
local p = {};  
 
local p = {};  
 
p.entity = nil;
 
p.claims = nil;
 
p.keys = {};
 
p.index = 1;
 
 
p.property = nil;
 
p.value = nil;
 
p.qualifier = nil;
 
 
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)
 
p.getLabel = function (frame)
Zeile 51: Zeile 15:
  
 
   local entity = mw.wikibase.getEntity(qid)
 
   local entity = mw.wikibase.getEntity(qid)
   local snaks = entity['claims'][pid][1]['qualifiers']
+
  local snak1 = entity['claims'][pid][2]['qualifiers']
-- local test = mw.wikibase.formatValues( snaks )
+
   local snaks = entity['claims'][pid][3]['qualifiers']
   local test = mw.wikibase.renderSnaks( snaks )
+
  local lab = mw.wikibase.getLabel(pid)
   return '[[Property:' .. pid .. ']]<tab>' .. test
+
  local test = mw.wikibase.formatValues( snaks )
 +
   local test1 = mw.wikibase.renderSnaks( snak1 )
 +
   return '[[Property:' .. pid .. '|' .. lab .. ']]|' .. test1 .. "|" .. test
  
 
end
 
end
  
 
return p
 
return p

Aktuelle Version vom 29. Mai 2020, 08:32 Uhr

Die Dokumentation für dieses Modul kann unter Modul:Test/Doku erstellt werden

-- Das Modul enthält einige Testfunktionen, um das Skripting mit Lua zu erproben

local p = {}; 

p.getLabel = function (frame)
 local pid = frame.args.pid
 local label = mw.wikibase.getLabel(pid)
 return label
end


function p.Eigenschaft(frame)
  local pid = frame.args.pid
  local qid = frame.args.qid

  local entity = mw.wikibase.getEntity(qid)
  local snak1 = entity['claims'][pid][2]['qualifiers']
  local snaks = entity['claims'][pid][3]['qualifiers']
  local lab = mw.wikibase.getLabel(pid)
  local test = mw.wikibase.formatValues( snaks )
  local test1 = mw.wikibase.renderSnaks( snak1 )
  return '[[Property:' .. pid .. '|' .. lab .. ']]|' .. test1 .. "|" .. test

end

return p