Modul:KML faktaruta
Utseende
Dokumentation [visa] [redigera] [historik] [rensa sidcachen]
local wikidata = require('Modul:Wikidata2').formatStatementsFromLua
p = {}
function p.main(entity)
local p3096 = wikidata({entity = entity, property = 'P3096', raw = 'true', enbarten = 'true', noref = 'true'})
if p3096 and #p3096 > 0 then
local siteurl, siteshort, sitetitle = wow(p3096[1].item)
if siteurl then
local kml_url = "https://tools.wmflabs.org/wp-world/googlmaps-proxy.php?page=https%3A%2F%2F" .. siteurl .. "%2Fw%2Findex.php%3Ftitle%3D" .. mw.uri.encode( sitetitle, "WIKI" ) .. "%26action=raw&output=classic"
local a = mw.text.tag('td', {style="border-top:0;"}, '[[Fil:Map-icon.svg|24px|link=]]')
a = a .. mw.text.tag('td', {style="border-right:solid 1px gray; border-top:0; padding-right:5px;", align="center"}, 'Se kartdata överlagrat på...<br /> [' .. kml_url .. ' Google]')
a = a .. mw.text.tag('td', {style="border-top:0;"}, '[[' .. siteshort .. sitetitle .. '|Kartdata]]')
a = mw.text.tag('tr', {}, a)
a = mw.text.tag('table', {style="line-height:110%; font-size:80%; border:0;"}, a)
a = mw.text.tag('div', {}, a)
return a
end
else
return nil
end
return nil
end
function wow(qid)
local sites = {}
sites[1] = { "svwiki", "sv.wikipedia.org", "" }
sites[2] = { "enwiki", "en.wikipedia.org", ":en:" }
sites[3] = { "bnwiki", "bn.wikipedia.org", ":bn:" }
sites[4] = { "cswiki", "cs.wikipedia.org", ":cs:" }
sites[5] = { "fawiki", "fa.wikipedia.org", ":fa:" }
sites[6] = { "frwiki", "fr.wikipedia.org", ":fr:" }
sites[7] = { "jawiki", "ja.wikipedia.org", ":ja:" }
sites[8] = { "mlwiki", "ml.wikipedia.org", ":ml:" }
sites[9] = { "zhwiki", "zh.wikipedia.org", ":zh:" }
sites[10] = { "commonswiki", "commons.wikimedia.org", "c:" }
local ent = mw.wikibase.getEntityObject(qid)
if ent and ent.sitelinks then
for i, j in pairs(sites) do
if ent.sitelinks[j[1]] then
return j[2], j[3], ent.sitelinks[j[1]].title
end
end
else
return nil, nil, nil
end
return nil, nil, nil
end
return p