/* per il menu */
function openMenu (link)
{
	if(link.parentNode)
		link = link.parentNode;
	var elements = link.getElementsByTagName("ul");
	if(elements && elements.length > 0)
	{
		if(elements[0].style)
			elements[0].style.display = (elements[0].style.display == "block") ? "none" : "block";
	}
	return false;
}



/* funzione per settare il colore di fondo del giorno che contiene eventi */
var eventi = new Array();

function __evento()
{
	this.id = "";
	this.giorno = "";
	this.url = "";
	this.quando = "";
	this.dove = "";
	this.titolo = "";
	this.dettagli = "";
}

function initParent(id, giorno)
{
	var elem = document.getElementById("evx"+id);
	if(elem)
	{
		var parent = elem.offsetParent;
		if(parent)
		{
			parent.onmouseover = function(){showDay(this,giorno)}
			//parent.onmouseout = function(){hideDay(giorno)}
//			parent.style.backgroundColor = "#DC1F23";
//			parent.style.position = "relative";
//			parent.style.color ="#fff";
			parent.className = "day";
		}
	}
}

function findElementPosition(obj) 
{
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	var param = new Object ();
	param.left  = curleft ;
	param.top  = curtop ;
	return param;
}

function showDay(source, giorno)
{
	var elem = document.getElementById("evday"+giorno);
	if(!elem)
	{
		elem = elemento = document.createElement("div");
		elem.id = "evday"+giorno;
		var pos = findElementPosition(source);
		elem.style.position = "absolute";
		elem.style.top = pos.top+"px";
		elem.style.left = pos.left+"px";
		elem.onmouseout = function(){hideDay("evday"+giorno)}
		elem.className = "divContenitoreEventi";
		elem.innerHTML = "";
		var singoliEventi = eventi[giorno];
		for(var i=0; i < singoliEventi.length; i++)
		{
			var evento = singoliEventi[i];
			elem.innerHTML += ""+evento.quando+"<br/>";
			elem.innerHTML += ""+evento.dove+"<br/>";
			//elem.innerHTML += "Tipo evento: <b><a href=\""+evento.url+"\" onmouseover=\"miniShow('"+"evday"+giorno+"')\" id=\"evlnk"+evento.id+"\">"+evento.titolo+"</a></b><br/>";
			elem.innerHTML += evento.dettagli+"<br/>";
		}
		var container = document.getElementsByTagName("body")[0];
		if(container)
			container.appendChild(elem);
	}
	else
	{
		var pos = findElementPosition(source);
		elem.style.top = pos.top+"px";
		elem.style.left = pos.left+"px";
		elem.style.display = "block";
	}
}

function miniShow(id)
{
	var elem = document.getElementById(id);
	if(elem)
	{
		elem.style.display = "block";
		elem.fromLink = true;
	}
}

function hideDay(div)
{
	var elem = document.getElementById(div);
	if(elem)
	{
		if(elem.fromLink)
			elem.fromLink = false;
		else
			elem.style.display = "none";
	}
}

function storeEventInformations(id, giorno, url, quando, dove, titolo, dettagli)
{
	//memorizzo l'oggetto
	if(!eventi[giorno])
	{
		eventi[giorno] = new Array();
		initParent(id, giorno);
	}
	var obj = new __evento();
	obj.id = id;
	obj.giorno = giorno;
	obj.url = url;
	obj.quando = quando;
	obj.dove = dove;
	obj.titolo = titolo;
	obj.dettagli = dettagli;
	eventi[giorno][eventi[giorno].length] = obj;
}