Modul:Astronomilenker
Hopp til navigering
Hopp til søk
Dokumentasjon for denne modulen kan opprettes på Modul:Astronomilenker/dok
local genitiv = require('Modul:Genitiv')._genitiv local entity = mw.wikibase.getEntityObject() claims = {} if entity then claims = entity.claims end --[[ I denne oversikten er egenskaps-ID-en først («P###»), etter den kommer betegnelsen som er en del av lenka, og så teksten som beskriver hvilket nettsted det er på, og til slutt språkkoden for nettstedet. Formen er dermed: { "EgenskapsID", "lenkebetegnelse", "lenkebeskrivelse", "språkkode" }, ]] local oversikt = { { "P716", "baneparametre ", "hos [[Jet Propulsion Laboratory|JPL Small-Body Database]]", "engelsk" }, { "P1296", "oppføring ", "hos Gran Enciclopèdia Catalana", "spansk" }, } local function etikett() if not entity then label = mw.title.getCurrentTitle().text else label = mw.wikibase.label(entity.id) or mw.title.getCurrentTitle().text return genitiv(label) end end local p = {} function p.astronomilenker(frame) local lenker = {} for _,v in pairs(oversikt) do local prop = v[1] local text = v[2] local desc = v[3] local lang = v[4] if claims then if claims[prop] and claims[prop][1] and claims[prop][1].mainsnak.datavalue then formaturlp = mw.wikibase.getEntity(prop).claims['P1630'] if formaturlp and formaturlp[1] and formaturlp[1].mainsnak.datavalue then formaturl = formaturlp[1].mainsnak.datavalue.value lenker[#lenker+1] = "* " .. frame:expandTemplate{ title="Språkikon", args = { [1] = lang, [2] = lang } } .. " [" .. string.gsub(formaturl, "$1", claims[prop][1].mainsnak.datavalue.value) .. " " .. etikett() .. " " .. text .. "] " .. desc end end end end if entity then if #lenker == 0 then lenker[1+#lenker] = "" lenker[1+#lenker] = '[[Kategori:Artikler uten astronomilenker fra Wikidata]]' else lenker[1+#lenker] = '[[Kategori:Artikler med astronomilenker fra Wikidata]]' end else lenker[1+#lenker] = "''Artikkelen mangler oppslag i Wikidata!''" lenker[1+#lenker] = '[[Kategori:Artikler med astronomilenker og uten kobling til Wikidata]]' end return table.concat(lenker,"\n") end return p