Module:MergedMap/settlement

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
local im = require ('Module:MergedMap')
local getArgs = require('Module:Arguments').getArgs
local p = {}
function p.isempty(s)
  return s == nil or s == ''
end
function p.main(frame, args)
	
	local caption_list = {}
	local args = getArgs(frame)
	local pushpin_map  = args['pushpin_map']
	local mapframe  = args['mapframe']
	local satelliteMap  = args['satelliteMap']
	local pictureMap  = args['pictureMap']
	
	local imageMap  = args['image_map']
	local imageMap1  = args['image_map1']
	local frameID  = args['mapframeId']
	local defaultMapFrame  = args['defaultMapFrame']
	local queryString = ''

	if not p.isempty(args['mapQuery']) then
		queryString = args['mapQuery']
	else
		
		if not p.isempty(pushpin_map) then 
			queryString = pushpin_map
			
		end
		
		if mapframe then
			queryString = queryString .. '#OSM'
		elseif p.isempty(pushpin_map) then
			if p.isempty(imageMap) then
				if p.isempty(imageMap1) then
					if defaultMapFrame == 'yes' then
					     queryString = queryString .. '#OSM'
					end 
				end				
			end
		end

		if satelliteMap then
			queryString = queryString .. '#customMap1'
		end
		if pictureMap then
			queryString = queryString .. '#customMap2'
		end

	end

	frame.args['mapQuery'] = queryString
	frame.args['customMap1']  = satelliteMap
	frame.args['customMap1Caption']  = 'Satellite map'
	frame.args['customMap2']  = pictureMap
	frame.args['customMap2Caption']  = 'Picture map'
	frame.args['mapframeId']  = frameID
	frame.args['mapframe-id']  = frameID
	frame.args['label']  = args['label']
	
	--do return '--' .. frame.args['mapQuery'] .. '!!' end
	--frame.args = args
	if not p.isempty(queryString) then
		return im.main (frame, args)
	end 
end
return p