Moduuli:Osoite, sijainti ja kunta
[ muokkaa ]
Moduuli tarkistaa onko Tällä hetkellä tarkistus on käytössä mallineessa malline:museo_WD.
|
local p = {}
local wd = require( 'Module:Fr:Interface Wikidata' ).fromLua
-- Print p as json
local function dumpJson(p)
return mw.text.jsonEncode(p)
end
-- Read arguments as flat array
local function parseArgs(frame)
local args = {}
for key, value in pairs(frame:getParent().args) do args[key] = value end
for key, value in pairs(frame.args) do args[key] = value end
return args
end
local function testKatuTieKujaTori(s)
local needles = { "katu", "tie", "kuja", "tori", "polku" }
for pp, needle in pairs(needles) do
if string.find(s, needle) then
return true
end
end
return false
end
local function testPostalCode(entity_id, s)
local postal_code = wd.formatStatements{ entity = entity_id, property = "P281", link="-"}
if postal_code then
if string.find(s, postal_code) then
return true
end
end
return false
end
function p.testSijainti(frame)
args=parseArgs(frame)
local entity_id = args['entity_id'] or mw.wikibase.getEntityIdForCurrentPage()
local osoite = args['osoite'] or ""
local sijainti = args['sijainti'] or ""
if testKatuTieKujaTori(sijainti) then
return ""
end
if testPostalCode(entity_id, sijainti) then
return ""
end
return osoite
-- local country_wd = wd.formatStatements{ entity = entity_id, property = "P17", link="-"}
-- local adm_wd = wd.formatStatements{ entity = entity_id, property = "P131", link="-"}
-- local location_wd = wd.formatStatements{ entity = entity_id, property = "P276", link="-"}
-- local address_wd = wd.formatStatements{ entity = entity_id, property = "P6375", link="-"}
-- local street_wd = wd.formatStatements{ entity = entity_id, property = "P669", link="-"}
-- local postal_code = wd.formatStatements{ entity = entity_id, property = "P281", link="-"}
end
return p