Modul:Basic

Aus Wikivoyage
Dokumentation für das Modul Basic[Ansicht] [Bearbeiten] [Versionsgeschichte] [Aktualisieren]

Historischer Hintergrund

Dieses Modul ist das erste auf dem deutschen Wikivoyage geschaffene Modul zur Nutzung von Datan aus Wikidata. Es wurde 27. August 2013 um 16:56 Uhr angelegt. Zu dieser Zeit war die Unterstützung der Wikis durch Wikidata eher spärlich. So gab es z. B. noch keine Interwiki-Links.

Auch wenn dieses Modul mittlerweile nicht mehr genutzt wird, sollte es aus historischen Gründen erhalten bleiben.

Funktionen

id

Liefert die Datenobjekt-ID zurück. Wenn der Artikel kein Datenobjekt besitzt, wird eine leere Zeichenkette zurück gegeben.

  • Return: "q<id>" oder ""

commonscat

Gibt die Commons-Kategorie entweder aus Wikidata oder wie im Artikel angegeben für die Anzeige in der Seitenleiste formatiert zurück. Der Link zur Kategorie wird unter Verwandte Sites angezeigt.

  • Argumente:
    • 1 (optional): Kategorie, die verwendet werden soll, statt Wikidata
  • Return: "[[Commons:Category:<Lemma>]]"

commons

Gibt den Artikel in Wikimedia Commons entweder aus Wikidata oder wie im Artikel angegeben für die Anzeige in der Seitenleiste formatiert zurück. Der Link zum Artikel wird unter Verwandte Sites angezeigt.

  • Argumente:
    • 1 (optional): Artikel, der verwendet werden soll, statt Wikidata
  • Return: "[[Commons:<Lemma>]]"

genCommons

Gibt den Artikel in Wikimedia Commons entweder aus Wikidata oder wie im Artikel angegeben für die Anzeige in der Seitenleiste formatiert zurück. Der Link zum Artikel wird unter Verwandte Sites angezeigt. Fehlt der Eintrag in Wikidata, wird, falls vorhanden, die Commons-Kategorie ausgegeben.

  • Argumente:
    • 1 (optional): Artikel, der verwendet werden soll, statt Wikidata
  • Return: "[[Commons:<Lemma>]]"

dewiki

Gibt den Artikel in der deutschsprachigen Wikipedia entweder aus Wikidata oder wie im Artikel angegeben für die Anzeige in der Seitenleiste formatiert zurück. Der Link zum Artikel wird unter Verwandte Sites angezeigt.

  • Argumente:
    • 1 (optional): Artikel, der verwendet werden soll, statt Wikidata
  • Return: "[[wikipedia:de:<Lemma>]]"

dewikisource

Gibt den Artikel in der deutschsprachigen Wikisource entweder aus Wikidata oder wie im Artikel angegeben für die Anzeige als Link zuürck.

  • Argumente:
    • 1 (optional): Artikel, der verwendet werden soll, statt Wikidata
  • Return: "[[wikisource:de:<Lemma>|<Lemma>]]"

latitude

Gibt den Breitengrad in dezimaler Darstellung zurück mit Minusvorzeichen für Orte auf der Südhalbkugel.

  • Return: z.B. 49.283333333333

longitude

Gibt den Breitengrad in dezimaler Darstellung zurück mit Minusvorzeichen für Orte im Westen.

  • Return: z.B. 49.283333333333
Hinweise
local p = {}
local entity = mw.wikibase.getEntityObject()

function p.id(frame)
    if entity ~= nil then
        return entity.id
    end
end

function p.commonscat(frame)
    local catname = mw.text.trim(frame.args[1]) -- catname could be empty
    if (catname == "") and (entity ~= nil) and (entity.claims ~= nil) and (entity.claims.P373 ~= nil) then
        catname = entity.claims.P373[1].mainsnak.datavalue.value
    end
    if catname ~="" then
        return "[[Commons:Category:" .. catname .. "]]"
    end
end

function p.commons(frame)
    local articlename = mw.text.trim(frame.args[1])
    if (articlename == "") and (entity ~= nil) and (entity.sitelinks ~= nil) and (entity.sitelinks.commonswiki ~= nil) then
        articlename = entity.sitelinks.commonswiki.title
    end
    if articlename ~= "" then
        return "[[Commons:" .. articlename .. "]]"
    end
end

function p.genCommons(frame)
    local pagename = p.commons(frame)
    if pagename == nil then
    	pagename = p.commonscat(frame)
    end
    if pagename ~= nil then
    	return pagename
    end
end

function p.dewiki(frame)
    local articlename = mw.text.trim(frame.args[1])
    if (articlename == "") and (entity ~= nil) and (entity.sitelinks ~= nil) and (entity.sitelinks.dewiki ~= nil) then
        articlename = entity.sitelinks.dewiki.title
    end
    if articlename ~= "" then
        return "[[wikipedia:de:" .. articlename .. "]]"
    end
end

function p.dewikisource(frame)
    local articlename = mw.text.trim(frame.args[1])
    local differentname = mw.text.trim(frame.args[2])
    if (articlename == "") and (entity ~= nil) and (entity.sitelinks ~= nil) and (entity.sitelinks.dewikisource ~= nil) then
        articlename = entity.sitelinks.dewikisource.title
    end
    if differentname == "" then
    	differentname = articlename
    end
    if articlename ~= "" then
        return "[[wikisource:de:" .. articlename .. "|" .. differentname .. "]]"
    end
end

function p.dmoz(frame)
	return ''
end

function p.latitude(frame)
    if (entity ~= nil) and (entity.claims ~= nil) and (entity.claims.P625 ~= nil) then
        return entity.claims.P625[1].mainsnak.datavalue.value.latitude
    end
end

function p.longitude(frame)
    if (entity ~= nil) and (entity.claims ~= nil) and (entity.claims.P625 ~= nil) then
        return entity.claims.P625[1].mainsnak.datavalue.value.longitude
    end
end

return p