Zeile 6: |
Zeile 6: |
| local p = {} --local p = {} -- p steht für Paket (engl. package) | | local p = {} --local p = {} -- p steht für Paket (engl. package) |
| | | |
− | function p.Index( frame ) | + | function p.getQuellen( frame ) |
| --teste ob argument ungleich nichts | | --teste ob argument ungleich nichts |
| local arg = frame.args['Pagename'] | | local arg = frame.args['Pagename'] |
| if arg == nil then return nil end | | if arg == nil then return nil end |
− | -- | + | local returnString = "" |
− | local returnString = 'Foo'
| + | local queryResult = mw.smw.ask('[[Typ::Gesamtquellen]][[-Hat Unterobjekt::'.. arg .. ']]|?=#|limit=1999|format=array|') |
− | | + | local i = 1 |
− | return returnString | + | while i <= table.getn(queryResult) |
| + | do |
| + | local queryQuelle = mw.smw.ask('[[' .. queryResult[i][1] ..']]|?Seitenausgabe Quelle|?Publikation|mainlabel=-') |
| + | returnString = returnString .. queryQuelle[1]['Publikation'] .. ":" |
| + | if (queryQuelle[1]['Seitenausgabe Quelle']) == nil then -- fehlende Angaben in der Quelle |
| + | returnString = returnString .."Fehler: keine Seitenzahl zu finden" |
| + | elseif(type(queryQuelle[1]['Seitenausgabe Quelle']) == "table") then -- Tabelle ein loop mehr |
| + | local n = 1 |
| + | returnString = returnString .. " Seite: " |
| + | while n <= table.getn(queryQuelle[1]['Seitenausgabe Quelle']) |
| + | do |
| + | returnString = returnString .. queryQuelle[1]['Seitenausgabe Quelle'][n] .."," |
| + | n = n +1 |
| + | end |
| + | else -- einfach nur text |
| + | returnString = returnString .. " Seite: " .. queryQuelle[1]['Seitenausgabe Quelle'] |
| + | end |
| + | returnString = returnString .. "<br>" |
| + | i = i +1 |
| + | end |
| + | return returnString |
| end | | end |
| | | |
| return p | | return p |