﻿var CityMaps = {};
var CityMapGlobal = {};

var trim = function(s)
{
	while (s.charAt(0)<=" " && s.length>0) s=s.substring(1);
	while (s.charAt(s.length-1)<=" " && s.length>0) s=s.substring(0, s.length-1);
	return s;
}

var mapInit = function() {
  if (GBrowserIsCompatible()) {
	var map = new GMap2(document.getElementById("gmap"));
    map.setCenter(new GLatLng(60, 30.5), 8);
	map.addControl(new GLargeMapControl());
	map.addControl(new GMapTypeControl());
	map.addControl(new GScaleControl());   
	
	var tinyIcon = new GIcon();
    tinyIcon.image = "/img/poselok.gif"; // путь к иконке
    tinyIcon.iconSize = new GSize(24, 24); //размеры иконки
    tinyIcon.iconAnchor = new GPoint(12, 12); // "центр" иконки
    tinyIcon.infoWindowAnchor = new GPoint(5, 1); // точка привязки инфоокна 
    markerOptions = { icon:tinyIcon };
	

	if (window.MapObjects) {
		for (i=0; i<MapObjects.length; i++) {
		  if(MapObjects[i]['left']>80) continue;
			var point = new GLatLng(MapObjects[i]['left'], MapObjects[i]['top']);
			var marker = new GMarker(point, markerOptions);
			marker.thisID = i;
			GEvent.addListener(marker, "click", function() { window.location.href = MapObjects[this.thisID]['url']; });
			GEvent.addListener(marker, "mouseout", function() { this.closeInfoWindow(); });
			GEvent.addListener(marker, "mouseover", function() {
                this.openInfoWindowHtml(
                "<div style='border-bottom: 1px solid #f0c0c0; font: bold 10pt/10pt Tahoma, Arial, serif; color: #c05050; margin: 5px 0px; padding: 4px 0px;'>"+MapObjects[this.thisID]['title']+"</div>"+
                "<div style='font: normal 7pt/8pt Tahoma, Arial, serif; color: #80c080; text-align: right;'>"+MapObjects[this.thisID]['napr']+"</div>"+
                "<div style='font: normal 7pt/8pt Tahoma, Arial, serif; color: #c08080; text-align: right;'>"+MapObjects[this.thisID]['typ']+"</div>"+
                "<p style='border-top: 1px solid #f0c0c0; font: bold 7pt/8pt Tahoma, Arial, serif; color: #404080; text-align: left;'>"+MapObjects[this.thisID]['prc']+" p.</p>"+
                "<div style='font: bold 7pt/8pt Tahoma, Arial, serif; color: black; text-align: right;'>"+MapObjects[this.thisID]['stat']+"</div>"
            ); });
			map.addOverlay(marker);
		}
	  } else if (document.getElementById('coord') != null) {
		var point = eval("new GLatLng("+coord.value+")");
		var marker = new GMarker(point, markerOptions);
		map.setCenter(point, 8);
		map.addOverlay(marker);
	  } else {
		var p = document.getElementById('gcoord').value;
	    var a = 0;
		var b = p.indexOf(",");
		var c = p.length-1;
		var point = new GLatLng(p.substring(a,b-1),p.substring(b+1,c)); //new GLatLng(60, 30.5);

		map.setCenter(point, 8);
		markerOptions = { icon:tinyIcon, draggable: true };			
		var marker = new GMarker(point, markerOptions);
		map.addOverlay(marker);
		map.addControl(new google.maps.LocalSearch(), new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10,20)));
		GSearch.setOnLoadCallback(mapInit);
		GEvent.addListener(map, "click", function(overlay, latlng) {
			marker.setLatLng(latlng);
			gcoord.value=latlng.y+","+latlng.x;
		});
	  }
  }
  return true;
}

window.onload = mapInit;