//var defaultLng = 30.401530265;
//var defaultLat = 59.929925621;
var defaultLng = 30.411530265;
var defaultLat = 59.929925621;

function initialize_map(id) {
	if (GBrowserIsCompatible()) {
		var map = new GMap2($(id));
//		map.setCenter(new GLatLng(59.929925621, 30.401530265), 0);
		map.setCenter(new GLatLng(59.929925621, 30.401530265), 4);
		return map;
	}
}

function admin_initialize_map(id, lat, lng, zoom) {
	if (GBrowserIsCompatible()) {
		if(lat == null)
			var lat  = 59.929925621;
		if(lng == null)
			var lng  = 30.401530265;
		if(zoom == null)
			var zoom  = 1;
			
		var map = new GMap2($(id));
		map.setCenter(new GLatLng(lat, lng), zoom);
		setZoomHrefs(zoom);
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
		return map;
	}
}

function getCoords(map) {
	if (GBrowserIsCompatible()) {
		var coords = map.getZoom();
	}
}


function setCoords(map, lat, lng) {
	if (GBrowserIsCompatible()) {
		if(lat == null)
			var lat  = 59.929925621;
		if(lng == null)
			var lng  = 30.401530265;
		map.setCenter(new GLatLng(lat, lng));
	}
}


function setZoom(map, level) {
	if (GBrowserIsCompatible()) {
		map.setZoom(level);
		setZoomHrefs(level);
		if(level == 0)
			setCoords(map, 0, 0);
	}
}


function zoomIn(map) {
	if (GBrowserIsCompatible()) {
		map.zoomIn();
		setZoomHrefs(map.getZoom());
	}
}

function zoomOut(map) {
	if (GBrowserIsCompatible()) {
		map.zoomOut();
		if(map.getZoom() == 0)
			setCoords(map, 0, 0);
		setZoomHrefs(map.getZoom());
	}
}

function setZoomHrefs(zoom) {
	for(var i=0;i<=17;i++)
	{
		var obj = $('georef_' + i);
		if(obj)
		{
			if(i <= zoom)
				obj.className = 'active';
			else
				obj.className='';
				
		}
	}
}



function setMarker(map, lat, lng, description, icon) {
	if (GBrowserIsCompatible()) {
		if(lat == null)
			var lat  = defaultLat;
		if(lng == null)
			var lng  = defaultLng;
		var center = new GLatLng(lat, lng);
		
		var markerIcon = new GIcon(G_DEFAULT_ICON);
		if(icon != 'red' && icon != '')
		{
			markerIcon.image = 'http://' + location.host + '/img/marker/' + icon + '.png';
//			markerIcon.image = 'http://bitterman.burevestnik.dev4.spbnet.ru/img/marker/blue.png';
//			markerIcon.image = 'http://gmaps-samples.googlecode.com/svn/trunk/markers/blue/blank.png';
		}
		
		var marker = new GMarker(center, {draggable: true, icon:markerIcon});
		
		if(description)
			marker.bindInfoWindow(description);
		
		marker.disableDragging();
		map.addOverlay(marker);
		return marker;
	}
	return null;
}



function setItemCreateMode(map, marker) {
	marker.enableDragging();

	GEvent.addListener(marker, "dragstart", function() {
	});

	GEvent.addListener(marker, "dragend", function() {
	});
	
}


function unsetItemCreateMode(map, marker) {
	marker.disableDragging();
}


function clearMarkers(map) {
	map.clearOverlays()
}


function showClients(map, massive)
{
	clearMarkers(map);
	for(var i=0;i<=massive.length - 1;i++)
	{
		setMarker(map, massive[i].lat, massive[i].lng, '<b>' + massive[i].title + '</b><br />' + massive[i].description, massive[i].marker);
	}
	map.setCenter(new GLatLng(59.929925621, 70.401530265), 2);	
//	$('geo_clients').className = 'active';
//	$('geo_dealers').className = '';
//	$('geo_partners').className = '';
}

function showDealers(map, massive)
{
	setZoom(map, 0);
	clearMarkers(map);
	for(var i=0;i<=massive.length - 1;i++)
	{
		setMarker(map, massive[i].lat, massive[i].lng, '<b>' + massive[i].title + '</b><br />' + massive[i].description, massive[i].marker);
	}
	$('geo_clients').className = '';
	$('geo_dealers').className = 'active';
	$('geo_partners').className = '';
}

function showPartners(map, massive)
{
	setZoom(map, 0);
	clearMarkers(map);
	for(var i=0;i<=massive.length - 1;i++)
	{
		setMarker(map, massive[i].lat, massive[i].lng, '<b>' + massive[i].title + '</b><br />' + massive[i].description, massive[i].marker);
	}
	$('geo_clients').className = '';
	$('geo_dealers').className = '';
	$('geo_partners').className = 'active';
}
