function Scorri(scorrevole, movimento, elementiVisibili)
{
	var i = 0;
	var divScorrevole = document.getElementById(scorrevole);
	var contenutoScorrevole = null;
	var frecceScorrimento = new Array();
	
	for (i = 0; i < divScorrevole.getElementsByTagName("div").length; i ++)
	{
		if (divScorrevole.getElementsByTagName("div")[i].className.indexOf("contenutoScorrevole") > -1)
		{
			contenutoScorrevole = divScorrevole.getElementsByTagName("div")[i];
			break;
		}
	}
	
	if (contenutoScorrevole == null)
		return;
	
	for (i = 0; i < divScorrevole.getElementsByTagName("a").length; i ++)
	{
		if (divScorrevole.getElementsByTagName("a")[i].className.indexOf("frecciaScorrimento") > -1)
			frecceScorrimento[frecceScorrimento.length] = new Array(divScorrevole.getElementsByTagName("a")[i].id, divScorrevole.getElementsByTagName("a")[i].href);
	}
	
	var contenuti = contenutoScorrevole.getElementsByTagName("div");
	var numeroContenuti = 0;
	var dimensioneContenuti = 0;
	var distanzaContenuti = 0;
	
	for (i = 0; i < contenuti.length; i ++)
	{
		if (contenuti[i].className.indexOf("contenutoInterno") > -1)
		{
			numeroContenuti += 1;
			if (movimento == "L" || movimento == "R")
			{
				dimensioneContenuti = contenuti[i].clientWidth;
				distanzaContenuti = parseInt(ProprietaCSS(contenuti[i], "marginLeft").replace("px", ""), 10);
			}
			if (movimento == "U" || movimento == "D")
			{
				dimensioneContenuti = contenuti[i].clientHeight;
				distanzaContenuti = parseInt(ProprietaCSS(contenuti[i], "marginTop").replace("px", ""), 10);
			}
		}
	}
	
	if (numeroContenuti <= elementiVisibili)
	 return;
	
	var spostamento = "";
	var posizioneIniziale = 0;
	var posizioneFinale = 0;
	
	switch (movimento)
	{
		case "L" :
			spostamento = "left";
			if (contenutoScorrevole.style.left == "")
				posizioneIniziale = 0;
			else
				posizioneIniziale = parseInt(contenutoScorrevole.style.left.replace("px", ""), 10);
			
			if (posizioneIniziale + (elementiVisibili * (dimensioneContenuti + distanzaContenuti)) < 0)
				posizioneFinale = posizioneIniziale + (elementiVisibili * (dimensioneContenuti + distanzaContenuti));
			else
				posizioneFinale = 0;
		break;
		case "R" :
			
			spostamento = "left";
			if (contenutoScorrevole.style.left == "")
				posizioneIniziale = 0;
			else
				posizioneIniziale = parseInt(contenutoScorrevole.style.left.replace("px", ""), 10);
			
			if (posizioneIniziale - ((elementiVisibili * (dimensioneContenuti + distanzaContenuti)) * 2) >= 0 - (numeroContenuti * (dimensioneContenuti + distanzaContenuti)))
				posizioneFinale = posizioneIniziale - (elementiVisibili * (dimensioneContenuti + distanzaContenuti));
			else
				posizioneFinale = ((numeroContenuti * (dimensioneContenuti + distanzaContenuti)) * -1) + (elementiVisibili * (dimensioneContenuti + distanzaContenuti));
			
		break;
		case "U" : 
			spostamento = "top";
			if (contenutoScorrevole.style.top == "")
				posizioneIniziale = 0;
			else
				posizioneIniziale = parseInt(contenutoScorrevole.style.top.replace("px", ""), 10);
			
			if (posizioneIniziale + (elementiVisibili * (dimensioneContenuti + distanzaContenuti)) < 0)
				posizioneFinale = posizioneIniziale + (elementiVisibili * (dimensioneContenuti + distanzaContenuti));
			else
				posizioneFinale = 0;
		break;
		case "D" : 
			spostamento = "top";
			if (contenutoScorrevole.style.top == "")
				posizioneIniziale = 0;
			else
				posizioneIniziale = parseInt(contenutoScorrevole.style.top.replace("px", ""), 10);
			
			if (posizioneIniziale - ((elementiVisibili * (dimensioneContenuti + distanzaContenuti)) * 2) >= 0 - (numeroContenuti * (dimensioneContenuti + distanzaContenuti)))
				posizioneFinale = posizioneIniziale - (elementiVisibili * (dimensioneContenuti + distanzaContenuti));
			else
				posizioneFinale = ((numeroContenuti * (dimensioneContenuti + distanzaContenuti)) * -1) + (elementiVisibili * (dimensioneContenuti + distanzaContenuti));
		break;
	}
	
	var twScorrimento = new Tween(contenutoScorrevole.style, spostamento, Tween.strongEaseOut, posizioneIniziale, posizioneFinale, 1, 'px');
	twScorrimento.onMotionFinished = function(){ AbilitaScorrimento(frecceScorrimento, true); };
	twScorrimento.start();
	AbilitaScorrimento(frecceScorrimento, false);
}

function AbilitaScorrimento(frecceScorrimento, abilita)
{
	for (i = 0; i < frecceScorrimento.length; i ++)
	{
		document.getElementById(frecceScorrimento[i][0]).href = (abilita ? frecceScorrimento[i][1] : "javascript: Void();");
	}
}

function Void()
{
	
}

function ProprietaCSS(x,prop)
{
	if (x.currentStyle)
		return (x.currentStyle[prop]);
	if (document.defaultView.getComputedStyle)
		return (document.defaultView.getComputedStyle(x,'')[prop]);
	return(null);
} 

function VisualizzaImmagine(e)
{

	var obj = OggettoEvento(e);
	
	if (obj.tagName.toUpperCase() != "a");
		obj = obj.parentNode;
	
	var descrizioneFoto = obj.getElementsByTagName("span")[0].innerHTML;
	var percorsoFoto = obj.getElementsByTagName("img")[0].src;
	//percorsoFoto = percorsoFoto.split("/")[percorsoFoto.split("/").length - 1];
	//percorsoFoto = percorsoFoto.split(".")[0].replace("_mini", "");
	//percorsoFoto = percorsoFoto.replace("_mini", "");
	percorsoFoto = percorsoFoto.replace("thumb_", "mini_");
	
	VisualizzaFoto(percorsoFoto, descrizioneFoto)
}

function OggettoEvento (e) {
	if (! e)
        e = event;
    var obj = e.target || e.srcElement;
	if (obj.tagName != 'A')
        obj = obj.parentNode;
	return obj;
}

function VisualizzaNews(indiceNews)
{
	window.location.href = "./news.php" + (indiceNews != -1 ? "?idNews=" + indiceNews : "");
}

function VisualizzaEventi()
{
	window.location.href = "./eventi.php";
}

function GestisciCampiIscrizione()
{
	var iscrCognome = document.getElementById("iscrCognome");
	var iscrNome = document.getElementById("iscrNome");
	var iscrMail = document.getElementById("iscrMail");
	var annIscrMail = document.getElementById("annIscrMail");
	
	if (iscrCognome != null)
	{
		iscrCognome.onfocus = function() { GestisciCampoIscrizione(this, true) };
		iscrCognome.onblur = function() { GestisciCampoIscrizione(this, false) };
	}
	
	if (iscrNome != null)
	{
		iscrNome.onfocus = function() { GestisciCampoIscrizione(this, true) };
		iscrNome.onblur = function() { GestisciCampoIscrizione(this, false) };
	}
	
	if (iscrMail != null)
	{
		iscrMail.onfocus = function() { GestisciCampoIscrizione(this, true) };
		iscrMail.onblur = function() { GestisciCampoIscrizione(this, false) };
	}
	
	if (annIscrMail != null)
	{
		annIscrMail.onfocus = function() { GestisciCampoIscrizione(this, true) };
		annIscrMail.onblur = function() { GestisciCampoIscrizione(this, false) };
	}
}

function GestisciCampoIscrizione(campo, ingresso)
{
	var nomeCampo = campo.id;
	
	var re = / /g;
	
	switch (nomeCampo)
	{
		case "iscrCognome":
			if (ingresso)
			{
				if (campo.value.toLowerCase().replace(re, "") == "cognome")
					campo.value = "";
			}
			else
			{
				if (campo.value.replace(re, "") == "" || campo.value.toLowerCase().replace(re, "") == "cognome")
					campo.value = "Cognome";
			}
		break;
		case "iscrNome":
			if (ingresso)
			{
				if (campo.value.toLowerCase().replace(re, "") == "nome")
					campo.value = "";
			}
			else
			{
				if (campo.value.replace(re, "") == "" || campo.value.toLowerCase().replace(re, "") == "nome")
					campo.value = "Nome";
			}
		break;
		case "iscrMail":
			if (ingresso)
			{
				if (campo.value.toLowerCase().replace(re, "") == "indirizzomail")
					campo.value = "";
			}
			else
			{
				if (campo.value.replace(re, "") == "" || campo.value.toLowerCase().replace(re, "") == "indirizzomail")
					campo.value = "Indirizzo mail";
			}
		break;
		case "annIscrMail":
			if (ingresso)
			{
				if (campo.value.toLowerCase().replace(re, "") == "indirizzomail")
					campo.value = "";
			}
			else
			{
				if (campo.value.replace(re, "") == "" || campo.value.toLowerCase().replace(re, "") == "indirizzomail")
					campo.value = "Indirizzo mail";
			}
		break;
	}
	//if (ingresso)
}

function CampoIscrizioneVuoto(nomeCampo)
{
  var re = / /g;
  var campo = document.getElementById(nomeCampo);

  switch (nomeCampo)
  {
    case 'iscrNome':
      if (campo.value.toLowerCase().replace(re, "") == "nome")
        return true;
    break;
    case 'iscrCognome':
      if (campo.value.toLowerCase().replace(re, "") == "cognome")
        return true;
    break;
    case 'iscrMail':
      if (campo.value.toLowerCase().replace(re, "") == "indirizzomail")
        return true;
    break;
    case 'annIscrMail':
      if (campo.value.toLowerCase().replace(re, "") == "indirizzomail")
        return true;
    break;
  }
  
  return false;
}

function Iscriviti(){

  if (CampoIscrizioneVuoto('iscrNome') || CampoIscrizioneVuoto('iscrCognome') || CampoIscrizioneVuoto('iscrMail'))
  {
    alert("Attenzione: è necessario compilare correttamente i campi di iscrizione!");
    return false;
  }
  
  if(ControllaMail(document.getElementById('iscrMail').value))
  {
    document.getElementById('formIscrizione').submit();
  }
  else
  {
      alert('Indirizzo email non valido');
  }
  
  return false;
}

function AnnullaIscrizione()
{
  if (CampoIscrizioneVuoto('annIscrMail'))
  {
    alert("Attenzione: è necessario compilare correttamente l'indirizzo mail!");
    return false;
  }
  
  if(ControllaMail(document.getElementById('annIscrMail').value))
  {
    document.getElementById('formAnnullaIscrizione').submit();
  }
  else
  {
      alert('Indirizzo email non valido');
  }
  
  return false;
}

function ChiudiAnnullaIscrizione()
{
  VisualizzaAnnullaIscrizione(false);
}

function VisualizzaAnnullaIscrizione(visualizza)
{
  var divIscrizione = document.getElementById('annullaIscrizione');
  var divIscrizioneSfondo = document.getElementById('annullaIscrizioneSfondo');
  
  if (divIscrizione == null)
		return;
	
	if (! visualizza)
  {
    divIscrizione.style.display = "none";
    divIscrizioneSfondo.style.display = "none";
  }
  else
  {
    divIscrizione.style.display = "inline";
    divIscrizioneSfondo.style.display = "inline";
    PosizionaAnnullaIscrizione();
  }
}

function GestisciAnnullaIscrizione(primoAccesso)
{
  PosizionaAnnullaIscrizione(true);
  if (primoAccesso)
  {
    if (ParametroQueryString("annIscr") == "S")
      VisualizzaAnnullaIscrizione(true);
  }
}

function PosizionaAnnullaIscrizione()
{
  var divIscrizione = document.getElementById('annullaIscrizione');
  var divIscrizioneSfondo = document.getElementById('annullaIscrizioneSfondo');
  
  if (divIscrizione == null)
		return;
  
	var dimensioneInternoW = divIscrizione.clientWidth;
	var dimensioneInternoH = divIscrizione.clientHeight;
	
	//alert(dimensioneInternoW + " - " + dimensioneSchermoW);
	
	divIscrizione.style.left = ((dimensioneSchermoW - dimensioneInternoW) / 2) + "px";
	
	if (dimensioneInternoH > dimensioneSchermoH)
		divIscrizione.style.top = "0px";
	else
		divIscrizione.style.top = (document.body.scrollTop + ((dimensioneSchermoH - dimensioneInternoH) / 2)) + "px";
	
	
	divIscrizioneSfondo.style.width = dimensioneSchermoW + "px";
	divIscrizioneSfondo.style.height = dimensioneSchermoH + "px";
	
	divIscrizioneSfondo.style.top = document.body.scrollTop + "px";
}

function ParametroQueryString(parametro)
{
  var linkPagina = (window.location + "");
  if (linkPagina.split(parametro + "=").length > 1)
  {
    if (linkPagina.split(parametro + "=")[1].split("&").length > 1)
      return linkPagina.split(parametro + "=")[1].split("&")[0];
    else
      return linkPagina.split(parametro + "=")[1];
  }
  else
    return "";
}
