Modul: Wirkungsorte: Unterschied zwischen den Versionen

Aus MAV
Wechseln zu: Navigation, Suche
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:
local p = {}
local p = {}


-- Die Funktion fehler ist eine reine Testfunktion, die wir nachher nicht mehr
-- Wir fragen nach Geburtsort+Geburtsdatum, dann nach den Wirkunsorten, anschließend nach Sterbeort und Sterbedatum
-- verwenden wollen
function p.abfragen ( frame )
function p.fehler( frame )
    return "Keine Wirkungsorte gefunden! "..frame.args[1]
end
 
-- Wir fragen nach dem Geburtsort
-- Beispielcall: '[[Modification date::+]]|?#-=page|?Modification date|?Last editor is=editor|?page author=authors|limit=2|mainlabel=-'
function p.ask(frame)
 
    if not mw.smw then
        return "mw.smw module not found"
    end
 
    if frame.args[1] == nil then
        return "no parameter found"
    end
 
    local queryResult = mw.smw.ask( frame.args )
 
    if queryResult == nil then
        return "(no values)"
    end
 
    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
myResult = myResult .. '{{#ask:[[Kategorie:Ausbildung]]}}'
local returntext = 'alle'
     return myResult
-- Abfrage Geburt
abfragetext = '[[-Geburtsort::' .. frame.args[1] .. ']]|link=none'
local abfrage = mw.smw.getQueryResult( abfragetext )
    if abfrage == nil then
        returntext = ''
    else
    returntext = type( queryResult )
    end
   
     return returntext
end
end


-- Table wird ausgegeben
-- Table wird ausgegeben
return p
return p

Aktuelle Version vom 15. März 2023, 16:08 Uhr

Referenzseite

Funktion

Erstellt eine chronologische Liste aller Wirkungsorte für Personenseiten für die Darstellung auf einer Karte. Dazu werden kombiniert:

  1. Attribut Geburtsort mit Geburtsdatum
  2. Attribut Sterbeort mit Sterbedatum
  3. die subobjects Ausbildung, Abschluss, Ereignis, Tätigkeit und Vorlesung

Wir generieren / fragen nach folgenden Attributen, die dargestellt werden sollen:

  • Beschreibungstext
  • Geographikum
  • Koordinaten

TODO

  • Übergeben werden müssen Geburtsort, Geburtsdatum, Sterbeort, Sterbedatum

Bitte nach folgendem Schema aufrufen

{{#invoke:Wirkungsorte|abfragen|{{SUBPAGENAME}}|{{{Geburtsort|}}}|{{{Geburtsdatum|}}}|{{{Sterbeort|}}}|{{{Sterbedatum|}}}}}

-- Wir erstellen die table, die wir zurückgeben wollen
local p = {}

-- Wir fragen nach Geburtsort+Geburtsdatum, dann nach den Wirkunsorten, anschließend nach Sterbeort und Sterbedatum
function p.abfragen ( frame )
	
	local returntext = 'alle'
	
	-- Abfrage Geburt
	abfragetext = '[[-Geburtsort::' .. frame.args[1] .. ']]|link=none'
	local abfrage = mw.smw.getQueryResult( abfragetext )
	
    if abfrage == nil then
        returntext = ''
    else
    	returntext = type( queryResult )
    end 
    
    return returntext
end

-- Table wird ausgegeben
return p