Event.observe(window, 'load', siteInit);
Event.observe(window, 'unload', GUnload);

	var mese = 0;
	var eventi = new Array();
	var eventi_tv = new Array();
	var eventi_map = new Array();
	
	eventi[7] = new Array();
	eventi[8] = new Array();
	eventi[9] = new Array();
	
	eventi_map[7] = new Array();
	eventi_map[8] = new Array();
	eventi_map[9] = new Array();
	
	eventi_tv[7] = new Array();
	eventi_tv[8] = new Array();
	eventi_tv[9] = new Array();
	
	eventi[7][5] = "<strong>Acqui Terme (Al),</strong> Stadio Comunale 'Ottolenghi'";
	eventi[7][7] = "<strong>Como,</strong> Stadio Sinigaglia";
	eventi[7][9] = "<strong>Carpi (Mo),</strong> Piazza Martiri";
	eventi[7][11] = "<strong>Locarno (CH),</strong> Piazza Grande";
	eventi[7][14] = "<strong>Taormina,</strong> Teatro Antico";
	eventi[7][16] = "<strong>Campo Felice di Roccella (Pa),</strong> Arena del mare";
	eventi[7][18] = "<strong>Teramo,</strong> Nuovo Stadio Comunale Piano D'Accio";
	eventi[7][20] = "<strong>Frosinone,</strong> Stadio Comunale Casaleno";
	eventi[7][22] = "<strong>Brindisi,</strong> Area Porto";
	eventi[7][23] = "<strong>We love Jovanotti</strong> alle 23.00";
	eventi[7][25] = "<strong>Viareggio,</strong> Festival Gaber<br /><span style='padding-left:35px; color: #333;'><strong>Jovanotti Safari Tour & More</strong></span>";
	eventi[7][27] = "<strong>Tarvisio (Ud),</strong> Piazza Unit&agrave;";
	
	eventi[8][1] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi[8][8] = "<span style='padding-left:30px; color: #333;'><strong>Jovanotti Safari Tour & More</strong></span>";
	//eventi[8][8] = "<strong>Adrano (Ct),</strong> Campo Sportivo<br /><span style='padding-left:30px; color: #333;'><strong>Jovanotti Safari Tour & More</strong></span>";
	//eventi[8][8] = "<strong>Catanzaro,</strong> Area Magna Grecia";
	eventi[8][10] = "<strong>Vasto (Ch),</strong> Stadio d'Aragona";
	eventi[8][12] = "<strong>Barletta (Ba),</strong> Fossato Castello";
	eventi[8][14] = "<strong>Agropoli (Sa),</strong> Campo Sportivo";
	eventi[8][15] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi[8][16] = "<strong>Cattolica,</strong> Arena della Regina";
	eventi[8][21] = "<strong>VJ for a Day: Jovanotti</strong> alle 23.00";
	eventi[8][22] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi[8][29] = "<strong>Jovanotti Safari Tour & More</strong>";
	
	eventi[9][5] = "<strong>Jovanotti Safari Tour & More</strong>",
	eventi[9][10] = "<strong>Cagliari,</strong> Fiera Campionaria",
	eventi[9][12] = "<span style='padding-left:35px; color: #333;'><strong>Jovanotti Safari Tour & More</strong></span>",
	eventi[9][14] = "<strong>Parma,</strong> Parco Ex Eridania",
	eventi[9][16] = "<strong>Verona,</strong> Arena";
	eventi[9][17] = "<strong>Verona,</strong> Arena";
	eventi[9][19] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi[9][20] = "<strong>Pergusa (En)</strong>";
	eventi[9][26] = "<strong>Jovanotti Safari Tour & More</strong>";
	
	eventi_map[7][5]  = new Array(44.677381, 8.468399);
	eventi_map[7][7]  = new Array(45.820366,	9.076595);
	eventi_map[7][9]  = new Array(44.790973,	10.889511);
	eventi_map[7][11] = new Array(46.199557,	8.81137);
	eventi_map[7][14] = new Array(37.860624,	15.296316);
	eventi_map[7][16] = new Array(37.999274,	13.890667);
	eventi_map[7][18] = new Array(42.692088,	13.761835);
	eventi_map[7][20] = new Array(41.669321,	13.368645);
	eventi_map[7][22] = new Array(40.637090,   17.942520);	
	eventi_map[7][25] = new Array(43.881748,10.261059);
	eventi_map[7][27] = new Array(46.51257,	13.582191);
	
	//eventi_map[8][8]  = new Array(37.724565,	14.869308);
	//eventi_map[8][8]  = new Array(38.97062,	16.62162);
	eventi_map[8][10] = new Array(42.170529,	14.742966);
	eventi_map[8][12] = new Array(41.377839,	16.317444);
	eventi_map[8][14] = new Array(40.38029,	    15.006294);
	eventi_map[8][16] = new Array(43.972557,	12.747059);
	
	eventi_map[9][10] = new Array(39.245283,	9.126205);
	//eventi_map[9][12] = new Array(40.922852,    9.501114);
	eventi_map[9][14] = new Array(44.915222,	10.399933);
	eventi_map[9][16] = new Array(45.446102,	10.997486);
	eventi_map[9][17] = new Array(45.446102,	10.997486);
	eventi_map[9][20] = new Array(37.534369,    14.311323);
	
	eventi_tv[7][23] = "<strong>We love Jovanotti</strong> alle 23.00";
	
	eventi_tv[8][1] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi_tv[8][8] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi_tv[8][15] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi_tv[8][21] = "<strong>We love Jovanotti</strong> alle 23.00";
	eventi_tv[8][22] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi_tv[8][29] = "<strong>Jovanotti Safari Tour & More</strong>";
	
	eventi_tv[9][5] = "<strong>Jovanotti Safari Tour & More</strong>",
	eventi_tv[9][12] = "<strong>Jovanotti Safari Tour & More</strong>",
	eventi_tv[9][19] = "<strong>Jovanotti Safari Tour & More</strong>";
	eventi_tv[9][26] = "<strong>Jovanotti Safari Tour & More</strong>";
	
	var map;

	var blueIcon 	= new GIcon(G_DEFAULT_ICON);
	blueIcon.image 	= "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
	markerOptions 	= { icon:blueIcon };

function siteInit(e){
  new Ajax.Updater('calendario_eventi', 'lib/phpcalendar.php',{ evalScripts: true });
  if (GBrowserIsCompatible()) {
		map = new GMap2($("g_map"));
		
		map.setCenter(new GLatLng(42.0, 13.0), 5);
		map.addControl(new GSmallMapControl());
		map.addControl(new ResetMap());
		
	}
}

function update_cal(pars){
	new Ajax.Updater('calendario_eventi', 'lib/phpcalendar.php',{parameters: pars, method: 'get', evalScripts: true });
  	return false;
}

function error_pwd(){
 	Element.show('error_head');
 	setTimeout("Element.hide('error_head');",5000);
}

function build_calendar(){
	mese = parseInt($$('.mese')[0].id.gsub('mese_', ''));
	
	map.clearOverlays();

	$R(1,31).each( function(d) {
	   	var id = 'gg_' + d;
	   	if($(id)){
	    	if(eventi[mese][d]){
	    		var currentTime = new Date()
	    	
	    		if (mese < currentTime.getMonth() + 1){
	    			if (eventi_tv[mese][d])
	    				$(id).addClassName('evento_blu_old');
	    			else
	    				$(id).addClassName('evento_old');
	    		}
	    		else if (mese == currentTime.getMonth() + 1 && d < currentTime.getDate()){
	    			if (eventi_tv[mese][d])
	    				$(id).addClassName('evento_blu_old');
	    			else
	    				$(id).addClassName('evento_old');
	    		}
				else{
					if (eventi_tv[mese][d])
	    				$(id).addClassName('evento_blu');
	    			else
	    				$(id).addClassName('evento');
				}
				
	       		Event.observe($(id), 'click', showEvent);
	       		
	       		coord = eventi_map[mese][d];
	       		if (coord){
		 			point = new GLatLng(coord[0], coord[1]);
	       			marker = new GMarker(point);
	
	        		GEvent.addListener(marker, "click", function(point) {
	        			map.panTo(point);
	        			$('evento').innerHTML = '<span>' + d + ' / ' + mese + '</span> &nbsp; ' + eventi[mese][d];	
	        		});
	        
	    			map.addOverlay(marker);
    			}
	     	}
	   	}
	});
}

function showEvent(e){
	var el = Event.element(e);
	var d = parseInt(el.id.gsub('gg_', ''));
	$('evento').innerHTML = '<span>' + d + ' / ' + mese + '</span> &nbsp; ' + eventi[mese][d]; 
	
	coord = eventi_map[mese][d];
	if (coord){
		point = new GLatLng(coord[0], coord[1]);
		map.panTo(point);
	}
}

function ResetMap() {}
ResetMap.prototype = new GControl();

ResetMap.prototype.initialize = function(map) {
  var container = document.createElement("div");

  var resetBtn = document.createElement("div");
  this.setButtonStyle_(resetBtn);
  container.appendChild(resetBtn);
  resetBtn.appendChild(document.createTextNode("Reset"));
  GEvent.addDomListener(resetBtn, "click", function() {
    map.setCenter(new GLatLng(42.0, 13.0), 5);
  });

  map.getContainer().appendChild(container);
  return container;
}

// By default, the control will appear in the top left corner of the
// map with 7 pixels of padding.
ResetMap.prototype.getDefaultPosition = function() {
  return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(7, 7));
}

// Sets the proper CSS for the given button element.
ResetMap.prototype.setButtonStyle_ = function(button) {
  button.style.textDecoration = "none";
  button.style.color = "#333";
  button.style.backgroundColor = "white";
  button.style.font = "small Arial";
  button.style.border = "1px solid black";
  button.style.padding = "2px";
  button.style.marginBottom = "3px";
  button.style.textAlign = "center";
  button.style.width = "3em";
  button.style.cursor = "pointer";
}
