var map, mgr, clIcon;
$(function(){
	initMap();
	
	$('#we-on-map .wom-background').css({ 'opacity' : 0.75 });
	
	$('#we-on-map h2 a,.mp-block h2 a, .mp-block a.subtitle').mouseover(function(){
		$(this).css('color','#'+$(this).attr('color'));
	}).mouseout(function(){
		$(this).css('color','#000000');
	});
});

function initMap(){
	if (GBrowserIsCompatible()) {   
	    
	    $.getJSON('/current_schools_json',null,function(data){
	    	map = new GMap2(document.getElementById("map"));
	 	    map.setCenter(new GLatLng(0, 0), 1);
	 	    map.setMapType(G_PHYSICAL_MAP);
	 	    map.addControl(new GSmallMapControl(),new GControlPosition(G_ANCHOR_TOP_RIGHT,new GSize(10,10)));
	 	    $('#map').css('backgroundImage','none');
	    	drawMarkers(data);
	    });
    }
}

function drawMarkers(js){
    markers = {};
    clIcon = new GIcon();
    clIcon.image = "/class_star.png";
    clIcon.iconSize = new GSize(22,22);
    clIcon.shadow = "/empty.gif";
    clIcon.shadowSize = new GSize(1, 1);
    clIcon.iconAnchor = new GPoint(22, 11);
    clIcon.infoWindowAnchor = new GPoint(11, 11);        
    
    var bounds = new GLatLngBounds();
    mgr = new MarkerManager(map);
    var p;
    for(var i=0; i<js.length; i++){
        p = js[i];
        var e = new GLatLng(p.Latitude, p.Longitude);
        //map.setCenter(e, 13);
        bounds.extend(e);
        markers[p.NodId] = createMarker(e,p.NodId,clIcon);
        mgr.addMarker(markers[p.NodId], 0);
    }
    
    //map.setZoom(map.getBoundsZoomLevel(bounds));
    //map.setCenter(bounds.getCenter());
    
    map.setCenter(new GLatLng(53.120405,60.078125));
    map.setZoom(2);
    
    mgr.refresh();    
}

function createMarker(point,NodId,icon){
   var m = new GMarker(point,{icon:icon});
   m.NodId = NodId;
   GEvent.addListener(m,'click',function(NodId,marker){
        return function(){
            if(typeof marker.cache != typeof void(0)){
                marker.openInfoWindowHtml(marker.cache); 
            }
            else{
                marker.openInfoWindowHtml('загрузка...');
               
                window.setTimeout(function(){
                    $.get('/schools/school/map_baloon/'+NodId+'.'+currentYear+'.plain.'+langProfile.Code+'.htm',{},function(data){
                    	map.updateInfoWindow([new GInfoWindowTab('',data)]); 
                        marker.cache = data;      
                    });
                },1000);
            }       
        }
   }(NodId,m));
   return m; 
} 


