<!--

var eventsNumber = 3;
var locale = 'it_IT';
var pw = '';

if(navigator.appName.indexOf('Micro')!=-1){ //define popup's width with IE
		pw = '180px';
}else{	pw = null;		}					//also define popup's width with the others

var x = false; var control = false;
var banOrder = new Array();

banOrder[0] = 'ist';
banOrder[1] = 'pre';
banOrder[2] = 'fin';
banOrder[3] = 'cul';
banOrder[4] = 'lav';

var settimana = new Array();

settimana[0] = 'Domenica';
settimana[1] = 'Luned';
settimana[2] = 'Marted';
settimana[3] = 'Mercoled';
settimana[4] = 'Gioved';
settimana[5] = 'Venerd';
settimana[6] = 'Sabato';

var mesi = new Array();

mesi[1] = 'Gennaio';
mesi[2] = 'Febbraio';
mesi[3] = 'Marzo';
mesi[4] = 'Aprile';
mesi[5] = 'Maggio';
mesi[6] = 'Giugno';
mesi[7] = 'Luglio';
mesi[8] = 'Agosto';
mesi[9] = 'Settembre';
mesi[10] = 'Ottobre';
mesi[11] = 'Novembre';
mesi[12] = 'Dicembre';

var dataRef = new Date();
if(location.search.substr(1)){
	var sString1 = (location.search.substr(1).split('&'))? location.search.substr(1).split('&'):location.search.substr(1).split('=');//month=m&year=yyyy
	for(i=0;i<sString1.length;i++){
		if(sString1[i].indexOf('=')!=-1){
			var value1 = sString1[i].split('=');
			for(j=0;j<value1.length;j++){
				if(value1[j] == 'month'){var m = value1[j+1];}
				if(value1[j] == 'year'){var y = value1[j+1];}
			}
		}else{
			if(sString1[i] == 'month'){var m = sString1[i+1];}
			if(sString1[i] == 'year'){var y = sString1[i+1];}
		}
	}
	//alert('il mese è m='+m);
	//alert('l\'anno è y='+y);
	control = true;
	if(m){dataRef.setMonth(m-1);}if(y){dataRef.setYear(y);}
}

//////////////////////////////////////////////////////////////////////////// COSTRUZIONE DEL CALENDARIO

var htmlContainer1 = '';
var giorni = 0;
var r = 0;

function getMeseRef() {
	var mese = dataRef.getMonth()+1;
	var month = mesi[mese];
	var year = (dataRef.getYear() < 1900)? dataRef.getYear()+1900:dataRef.getYear();
	var htmlString = month+' '+year;
	document.getElementById('meseRef').innerHTML = htmlString;
}

function buildCalendar(){

	var table1 = '<table cellspacing="2" cellpadding="0" border="0" class="calendar2"><tr>';//'<tr>';

	var mese = dataRef.getMonth()+1;
	var meseCal = (mese < 10)? '0'+mese:mese;
	var year = (dataRef.getYear() < 1900)? dataRef.getYear()+1900:dataRef.getYear();
	var dataCalendario; var giornoCal; var htmlEventi;

	getMeseRef();
	
	for(i=1;i<33;i++){
		dataRef.setDate(i);
		var nowMonth = dataRef.getMonth()+1;
		if(mese != nowMonth){
			giorni = i;i=33;
			dataRef.setDate(0);
			dataRef.setDate(1);
		}
	}
	
	var ng = dataRef.getDay();
	
	r=0;
	if (ng == 0){
		for(n=1;n<7;n++){table1 += '<td class="sfondo"> </td>';r+=1;}
		//table1.innerHTML += '</tr>';
	}else{
		for(n=1;n<ng;n++){table1 += '<td class="sfondo"> </td>';r+=1;}
	}
	
	for(n=1;n<giorni;n++){
		dataRef.setDate(n);
		giornoCal = (n < 10)? '0'+n:n;
		dataCalendario = giornoCal+'/'+meseCal+'/'+year;
		var titleMonth = (meseCal.toString().indexOf('0')!=-1)? meseCal.toString().substr(1):meseCal.toString();
		var param = "'" + dataCalendario + "'";
		htmlEventi = getCalContainerEventid(dataCalendario,control);
		table1 += '<td onMouseOver="onOver('+param+',this);" class="'+htmlEventi+'" title="'+titleMonth+'/'+year+'">'+n+'</td>';
		if(((n+r)%7)==0){table1 += '</tr><tr>';
		}else if(((n+r)%7)==0 && n == giorni-1){table1 += '</tr>';}
	}

	r=0;
	dataRef.setDate(giorni-1);
	ng = dataRef.getDay();
	if (ng > 0 ){
		for(n=1;n<(7-ng+1);n++){table1 += '<td class="sfondo"> </td>';}
		table1 += '</tr></table>'//'</tr>';
	}

	var div1 = document.getElementById('div_cal');
	resultReset(div1);
	if(navigator.appName.indexOf('Micro')!=-1){
		div1.insertAdjacentHTML('BeforeEnd', table1);
	}else{div1.innerHTML = table1;}
	dataRef.setDate(1);
}		

var day = (dataRef.getDate() < 10)? '0'+dataRef.getDate():dataRef.getDate();
var month = ((dataRef.getMonth()+1) < 10)? '0'+(dataRef.getMonth()+1):(dataRef.getMonth()+1);
var year = (dataRef.getYear() < 1900)? dataRef.getYear()+1900:dataRef.getYear();

function setBottomEvents(day,month,year){
	
	var splitEvents = new Array();var events='';
	var newDate; var newAbs; var newUrl;var j=0;
	for(i=1;i<megaArray.length;i++){
		var findDate1 = megaArray[i].split('|');
		var date = findDate1[1];
		var mday = date.substr(0,2);
		var mmonth = date.substr(3,2);
		var myear = date.substr(6,4);
		if(((mday > day && mmonth >= month) || (mday < day && mmonth > month)) && myear == year){
			for(j=0;j<eventsNumber;j++){
				if(megaArray[i+j]){
					splitEvents = megaArray[i+j].split('|');
					var newCat = splitEvents[0];
					newDate = splitEvents[1];				
					newMonth = (splitEvents[1].substr(3,1)==0)? splitEvents[1].substr(4,1):splitEvents[1].substr(3,2);
					newYear = splitEvents[1].substr(6,4);
					newAbs = splitEvents[2];
					newUrl = (splitEvents[4])? splitEvents[4]:'/'+locale+'/events/events.page?month='+newMonth+'&year='+newYear;
					events += '<div class="eventi" ';
					events += 'style="background:url(/'+locale+'/static/images/ico_cal_'+newCat+'.gif) top left no-repeat !important;">';
					events += '<a href="'+newUrl+'">'+newDate+'</a><br />'+newAbs+'</div>';
				}else{j = eventsNumber;}
			}i = megaArray.length;
		}
	}
	events += '<div class="eventi"><a href="/'+locale+'/events/events.page?menu=all" style="font-size:11px;font-weight:bold;">Agenda Completa</a></div>';
	var div1 = document.getElementById('events_div');	
	if(navigator.appName.indexOf('Micro')!=-1){
		div1.insertAdjacentHTML('BeforeEnd', events);
	}else{div1.innerHTML = events;}
	dataRef.setDate(1);
}

function changeMonth(m){
	document.getElementById('popup').style.display = 'none';
	dataRef.setMonth(m);
	buildCalendar();
	//setCalendar(areaName);
}

function onOver(param,obj){
	//alert(param);
	if (x){window.clearTimeout(x);}
	x = window.setTimeout("document.getElementById('popup').style.display='none';", 6000);
	//alert(x);
	var position = findPos(obj);
	var coEvents = findEvents(param);
	var testoPopUp = '<span><div class="intestazione_balloon">'+param+'</div><div class="contenuto_balloon">';
	//alert(position);
	//alert(coEvents);

	if(coEvents.length>0){
		document.getElementById('popup').innerHTML = '';
		for(c=0;c<coEvents.length;c++){
			var events = coEvents[c].split('|');
			var eventID = (events[3])? events[3]:'';
			var eventDate = events[1];
			var subMonth = (obj.title.length>6)? obj.title.substr(0,2):obj.title.substr(0,1);
			var subYear =  (obj.title.length>6)? obj.title.substr(3,4):obj.title.substr(2,4);					  
			var ahref = (events[4])? events[4]:'/'+locale+'/events/events.page?month='+subMonth+'&year='+subYear;
			var text ="";
						
			//var img = '<td class="cal_col_1"><img src="/'+locale+'/static/images/calendario/pop_'+events[0]+'.gif" /></td>';
			//text = '';
			if (ahref == 'null'){
				text = '<div class="sx">' + events[2]+ '</div>';
			}else{
				var target = (ahref.indexOf('http') != -1)? '_blank':'';
				text = '<div class="sx">'  + '<a href="'+ahref+'" target="'+target+'">'+events[2]+'</a></div>';;
			}
			
			// 22-09-2009 eliminato link per eventi passati
			
			var link ='';
			
			var eventday = eventDate.substr(0,2);
		  var eventmonth = eventDate.substr(3,2);
		  var eventyear = eventDate.substr(6,4);
			if (isFutureEvent(eventday,eventmonth,eventyear) >0) {
					link = '<div class="dx"><a href="/oilportal/calendar/reminder.do?locale='+locale+'&id='+eventID+'&TB_iframe=true&height=347&width=381&modal=true" title="" class="thickbox"><img src="/'+locale+'/static/images/icona_reminder.gif" border="0" /></a></div>';
			}
			testoPopUp += text+ link;
			
		}
		testoPopUp +=	'</div></span>';
		document.getElementById('popup').innerHTML = testoPopUp;
		document.getElementById('popup').style.display = '';
		var ph = findPos(document.getElementById('popup'));
		documentIsReady();
	
		if(pw){document.getElementById('popup').style.width = pw;}
		document.getElementById('popup').style.top = (position[1]-ph[3]) + 'px';
		document.getElementById('popup').style.left = (position[0]-150) + 'px';
	}//else{document.getElementById('popup').style.display = 'none';}
}

function getCalContainerEventid(dataCalendario,c) {
	var classEvents = false;
	if(megaArray.length>0){
		for(i=1;i<megaArray.length;i++){
			var findDate1 = megaArray[i].split('|');
			var findNdate = (megaArray[i+1])? megaArray[i+1].split('|'):null;
			var date = findDate1[1];
			var nDate = (findNdate)? findNdate[1]:null;
			var category = megaArray[i].substr(0,3);
			var loc = location.href;
			if(date == dataCalendario && date != nDate && c){
				if(category == 'eve'){
					classEvents = 'selected_arancio';
				}else if(category == 'fie'){
					classEvents = 'selected_azzurro';
				}else{classEvents = 'selected';}
				i = megaArray.length;
			}else if(date == dataCalendario && date == nDate && c){
				classEvents = 'selected_arancio';
				i = megaArray.length;
			}else if(date == dataCalendario && !c && category == 'eve'){
				classEvents = 'selected_arancio';
				i = megaArray.length;	
				}else if(date == dataCalendario && !c ){
				classEvents = 'selected_azzurro';
				i = megaArray.length;

			}else if(date != dataCalendario){classEvents = 'sfondo';}
		}
	}else{classEvents = 'sfondo';}
	return classEvents;
}

////////////////////////////////////////////////////////////////////////TECNICAL STATEMENT

function findPos(obj) {
	
	var mw = mh = 0;
	mw = obj.offsetWidth;
	mh = obj.offsetHeight;
	
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	
	return [curleft,curtop,mw,mh];
}

function findEvents(param){
	var coEvents = new Array();

	for(i=1;i<megaArray.length;i++){
		
		var findDate1 = megaArray[i].split('|');
		var date = findDate1[1];
		var category = megaArray[i].substr(0,3);

		if(date == param){
			coEvents.push(megaArray[i]);
		}

	}
	return coEvents;
}

function resultReset(obj) {

	var figli = obj.childNodes;

	while ( figli.length>0 ) {
		//alert(figli[0].innerHTML);
		obj.removeChild( figli[0] );
		figli = obj.childNodes;
	}
}

//window.setTimeout("buildCalendar();", 2000);

//buildCalendar();

//setBottomEvents(day,month,year);

// funzione che ricarica la pagina degli eventi con impostati i parametri di mese e anno corretti
// m indica il numero di mesi (+1 oppure -1)

function changePageEventi(m) {
	
	var myDate=dataRef;
	myDate.setMonth(myDate.getMonth()+m);
	
	month=dataRef.getMonth()+1;
	year=dataRef.getFullYear();
	
	var linkPage=document.URL;
	
	if (linkPage.indexOf("?") > 0) { 
		linkPage = linkPage.substr(0,linkPage.indexOf("?"));
	}
	
	var qst=location.search.substr(1);
	
	if (qst.length > 0) {

  var parametri = new Array();
  parametri=qst.split("&");
  
	  for(i=0;i<parametri.length;i++){
				if(parametri[i].indexOf("month") < 0 && parametri[i].indexOf("year") < 0 && parametri[i].indexOf("currentpage") < 0){
					if (linkPage.indexOf("?") < 0) {
					linkPage += "?"+parametri[i];
				}
				else {
					linkPage += "&"+parametri[i];
					}
				}			
		}
	
	}
	if (linkPage.indexOf("?") < 0) {
		linkPage += "?month="+month;
	}
	else {
	  linkPage += "&month="+month;
	}
	
	linkPage += "&year="+year;
	
	location.href=linkPage;
	
}

function isFutureEvent(eventday,eventmonth,eventyear) {
	today = new Date();	
	eventdate = new Date( eventyear, eventmonth-1, eventday);	
	return ((eventdate-today)/86400000) > 0 ? true : false;
}

-->

