Moduuli:Fr:Infobox/Kaupunkilaatikko

Wikimatkoista

local building = require "Module:Fr:Infobox/Fonctions/Bâtiment"
local general = require "Module:Fr:Infobox/Fonctions"
local population =require "Module:Fr:Infobox/Fonctions/asukasluku"
local localdata = require "Module:Fr:Infobox/Localdata"
local wd = require "Module:Fr:Interface Wikidata".fromLua
local osmid = require "Moduuli:OSM ids"

local function rendermap()
--	return frame:expandTemplate{ title = 'mapframe', args = { 'tag', 'arg2', name = 'arg3' } }
end

--[[
--yritetään tarkistaa, löytyykö osm:ssa wikidatalinkkiä
osm_testi = osmid.test()

-- requiresta localdata tuleva localdata on sisällöltään eri kuin function parametrina tuleva localdata 
-- displayformat = "raw" palauttaa wikidatassa olevan arvon sellaisenaan ilman muotoilua
local function kaupungin_ala()
   local ret=wd.formatStatements( {entity =localdata.wikidata, property = 'P2046', rank="best", numval=1, displayformat="raw" })
   return ret
end
]]--
-- requiresta localdata tuleva localdata on sisällöltään eri kuin function parametrina tuleva localdata 
-- targetunit muuntaa sen tiettyyn yksikköön mikäli muunnossäännöt löytyvät sivulta Moduuli:Fr:Conversion/Données
local function kaupungin_ala2()
   local ret=wd.formatStatements( {entity =localdata.wikidata, property = 'P2046', rank="best", numval=1, targetunit="km2", displayformat="raw" })
   return ret
end

if kaupungin_ala2() == nil then zoomaus = "-"
else
	pituus=2*math.sqrt(kaupungin_ala2()/2) --kaupungin pidemmän sivun pituus, jos kaupunki on suorakulmio, jonka sivujen pituussuhde on 1:2
	
	if pituus <= 4 then zoomaus = 13
	elseif pituus > 4 and pituus <= 8 then zoomaus = 12
	elseif pituus > 5 and pituus <= 15 then zoomaus = 11
	elseif pituus > 15 and pituus <= 30 then zoomaus = 10
	elseif pituus > 30 and pituus <= 50 then zoomaus = 9
	elseif pituus > 50 and pituus <= 100 then zoomaus = 8 --jos area-arvo hyvin iso, se luultavasti sisältää muutakin kuin kaupungin alan (koko kunnan)
	else zoomaus="-"  end
end
--[[
-- requiresta localdata tuleva localdata on sisällöltään eri kuin function parametrina tuleva localdata 
-- showunit "-" näyttää säilyttää muotoilun, mutta jättää pois yksikön
local function kaupungin_ala3()
   local ret=wd.formatStatements( {entity =localdata.wikidata, property = 'P2046', rank="best", numval=1, targetunit="m2", showunit="-" })
   return ret
end


local function print_localdata()
   local ret=mw.text.jsonEncode(localdata)
   return ret
end
]]--
return 
	{
	maincolor = '#A8D2FF',
	parts =
    	{
    		general.title( "entete map"),
    		{type = "table", rows = {
				building.geoloc({marker = 'village', automaplocation="1", default_zoom=zoomaus,  geomasktype="geoline", show='Listing,mask,around,buy,city,do,drink,eat,go,listing,other,see,sleep,vicinity,view,black,blue,brown,chocolate,forestgreen,gold,gray,grey,lime,magenta,maroon,mediumaquamarine,navy,red,royalblue,silver,steelblue,teal,fuchsia'}),
				building.coordinates({displaytitle="-"}),
				{type = "row", label ="Väkiluku", value='väkiluku', property = "P1082" },
				building.elevation(),
--				{type = 'row', label = 'Pinta-ala', value = "pinta-ala", wikidata = function()  return kaupungin_ala() end },		
--				{type = 'row', label = 'Pinta-ala2', value = "pinta-ala2", wikidata = function()  return kaupungin_ala2() end },		
--				{type = 'row', label = 'Pinta-ala3', value = "pinta-ala3", wikidata = function()  return kaupungin_ala3() end },		
--				{type = 'row', label = 'localdata', value = "localdata", wikidata = function()  return print_localdata() end },		

			},
		}
	}
}