Modul:Quellen: Unterschied zwischen den Versionen

Aus Splitterwiki
Zur Navigation springen Zur Suche springen
Zeile 12: Zeile 12:
 
local returnString = ""
 
local returnString = ""
 
local queryResult =  mw.smw.ask('[[Typ::Gesamtquellen]][[-Hat Unterobjekt::Selenia]]|?=#|limit=1999|format=array|')
 
local queryResult =  mw.smw.ask('[[Typ::Gesamtquellen]][[-Hat Unterobjekt::Selenia]]|?=#|limit=1999|format=array|')
local i = 1
+
if type( queryResult ) == "table" then
while i <= table.getn(queryResult)
+
        local myResult = ""
do
+
        for num, row in pairs( queryResult ) do
returnString = returnString .. tostring(queryResult[i][1]) --name der unterobjekte die die quellenangabe beinhalten
+
            myResult = myResult .. '* This is result #' .. num .. '\n'
i = i +1
+
            for property, data in pairs( row ) do
end
+
                local dataOutput = data
 +
                if type( data ) == 'table' then
 +
                    dataOutput = mw.text.listToText( data, ', ', ' and ')
 +
                end
 +
                myResult = myResult .. '** ' .. property .. ': ' .. dataOutput .. '\n'
 +
            end
 +
        end
 +
        return myResult
 +
    end
  
 
     return returnString
 
     return returnString

Version vom 26. Februar 2024, 21:15 Uhr

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

--[[
Lua Modul zum zuverlässigen darstellen von Artikelquellen
]]--


local p = {} --local p = {} -- p steht für Paket (engl. package)

function p.getQuellen( frame )
	--teste ob argument ungleich nichts
	local arg = frame.args['Pagename']
	if arg == nil then return nil end
	local returnString = ""
	local queryResult =  mw.smw.ask('[[Typ::Gesamtquellen]][[-Hat Unterobjekt::Selenia]]|?=#|limit=1999|format=array|')
	if type( queryResult ) == "table" then
        local myResult = ""
        for num, row in pairs( queryResult ) do
            myResult = myResult .. '* This is result #' .. num .. '\n'
            for property, data in pairs( row ) do
                local dataOutput = data
                if type( data ) == 'table' then
                    dataOutput = mw.text.listToText( data, ', ', ' and ')
                end
                myResult = myResult .. '** ' .. property .. ': ' .. dataOutput .. '\n'
            end
        end
        return myResult
    end

    return returnString
end

return p