function opacity(obj,val){
	var ogg=document.getElementById(obj);
	try{
	ogg.style.opacity=(val/100);
	ogg.filters.alpha.opacity=val;
	}catch (e)
	{return}
}


function go(obj) 
{
window.location=obj.options[obj.selectedIndex].value;
}

function popup(Site,w,h)
{	
	var sch=screen.width/2;
	var wdh=w/2;
	var lft=sch-wdh;
	if (lft<0) lft=0;
	win=window.open(Site,'PopupName','channelmode=0, directories=0, toolbar=0, location=0, status=0, menubar=0, scrollbars=1, titlebar=0, resizable=0, copyhistory=0, width='+w+', height='+h+', left='+lft+', top=200')
	win.focus();
}


function blank(obj){
	document.getElementById(obj).innerHTML="";
}

/************	INIZIO AJAX   ************/

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}


function calendStateChanged() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("cal_div").innerHTML=xmlHttp.responseText;
	}
}


function showDate(yr,mn)
{
if (yr.length==0)
  { 
  document.getElementById("cal_div").innerHTML="";
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_box_calend.php";
url=url+"?yr="+escape(yr);
url=url+"&mn="+escape(mn);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=calendStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function venueStateChanged() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("venue_div").innerHTML=xmlHttp.responseText;
	}
}


function showVenue(id)
{
if (id.length==0)
  { 
  document.getElementById("venue_div").innerHTML="";
  return;
  }
  document.getElementById("venue_div").innerHTML="";
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_box_venue.php";
url=url+"?id="+escape(id);
url=url+"&sid="+Math.random();
document.getElementById("venue_div").style
xmlHttp.onreadystatechange=venueStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}


function stats(id)
{
if (id.length==0 && id!=0)
  { 
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_stats.php";
url=url+"?id="+escape(id);
url=url+"&sid="+Math.random();
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}


function codStateChanged() 
{ 
	if (xmlHttp.readyState==3)
	{ 
		document.getElementById("div_cod_email").innerHTML="";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("div_cod_email").innerHTML=xmlHttp.responseText;
	}
}

function inviaCod()
{
var eml=document.getElementById("cod_email").value;
var spam=document.getElementById("cod_spam").value;
if (eml.length==0)
  { 
  document.getElementById("div_cod_email").innerHTML="";
  return;
  }
if (spam.length==0)
  { 
  document.getElementById("div_cod_email").innerHTML="";
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_codice.php";
url=url+"?eml="+escape(eml);
url=url+"&spm="+escape(spam);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=codStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

// #################################################### verifica codice ####################################################


function vercodeStateChanged() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("vercode").innerHTML=xmlHttp.responseText;
	}
}

function vercode()
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="_antispam.php";
url=url+"?sid="+Math.random();
xmlHttp.onreadystatechange=vercodeStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}


// #################################################### verifica codice ####################################################

// #################################################### filtro artisti ####################################################


function artfilterStateChanged() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("divelenco").innerHTML=xmlHttp.responseText;
	}
}

function artfilter(event){
if (event.keyCode==40)
{
	var el=document.getElementById("elenco");
	el.focus();
	el.options[0].selected=true;
	return;
}
var art=document.getElementById("filter");
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_artisti.php";
url=url+"?q="+escape(art.value);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=artfilterStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}



// #################################################### filtro artisti ####################################################

// #################################################### filtro venue ####################################################


function venuefilterStateChanged() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("divvenue").innerHTML=xmlHttp.responseText;
	}
}

function venuefilter(event){
if (event.keyCode==40)
{
	var vn=document.getElementById("venue");
	vn.focus();
	vn.options[0].selected=true;
	return;
}
var art=document.getElementById("vfilter");
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_venue.php";
url=url+"?q="+escape(art.value);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=venuefilterStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}



// #################################################### filtro venue ####################################################


// #################################################### aggiungi artista ####################################################


function addArtistStateChanged() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("nuovoartista_msg").innerHTML=xmlHttp.responseText;
		artfilter('mouseover');
	}
}

function addArtist(){
var nomeart=document.getElementById("add_nomeart")
var artista=document.getElementById("add_artista");
var filter=document.getElementById("filter");
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_add_artist.php";
url=url+"?nomeart="+escape(nomeart.value);
url=url+"&artista="+escape(artista.value);
url=url+"&sid="+Math.random();
filter.value=artista.value;
xmlHttp.onreadystatechange=addArtistStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
nomeart.value='';
artista.value='';
}



// #################################################### aggiungi artista ####################################################

// #################################################### aggiungi venue ####################################################


function addVenueStateChanged() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("nuovovenue_msg").innerHTML=xmlHttp.responseText;
		venuefilter('mouseover');
	}
}

function addVenue(){
var venue=document.getElementById("place");
var citta=document.getElementById("citta");
var regione=document.getElementById("regione");
var prov=document.getElementById("prov");
var indirizzo=document.getElementById("indirizzo");
var cap=document.getElementById("cap");
var tel=document.getElementById("tel");
var link=document.getElementById("link");
var ok=document.getElementById("ok");
var subins=document.getElementById("subins");
var vfilter=document.getElementById("vfilter");
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_add_venue.php";
url=url+"?venue="+escape(venue.value);
url=url+"&citta="+escape(citta.value);
url=url+"&regione="+escape(regione.options[regione.selectedIndex].value);
url=url+"&prov="+escape(prov.options[prov.selectedIndex].value);
url=url+"&indirizzo="+escape(indirizzo.value);
url=url+"&cap="+escape(cap.value);
url=url+"&tel="+escape(tel.value);
url=url+"&link="+escape(link.value);
url=url+"&sid="+Math.random();
vfilter.value=venue.value;
xmlHttp.onreadystatechange=addVenueStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
venue.value='';
citta.value='';
regione.selectedIndex=0;
prov.selectedIndex=0;
indirizzo.value='';
cap.value='';
tel.value='';
link.value='';
ok.checked=false;
subins.disabled=true;
}



// #################################################### aggiungi venue ####################################################

// #################################################### mostra pił eventi ####################################################


function showNextStateChanged(id) 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("sn"+id).innerHTML=xmlHttp.responseText;
	}
}


function showNext(catid,start){
	var id=catid+''+start;
if (catid.length==0 || start.length==0)
  {
	alert('errore dati!');
	return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_eventi_list.php";
url=url+"?catid="+escape(catid);
url=url+"&start="+escape(start);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=function(){
		showNextStateChanged(id);
	};
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}



// #################################################### mostra pił eventi ####################################################

// #################################################### modifica venue ####################################################


function modVenueStateChanged(id) 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("modven").innerHTML=xmlHttp.responseText;
	}
}


function modVenue(obj){
var id= obj.options[obj.selectedIndex].value;
if (id.length==0)
  {
	alert('errore dati!');
	return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_mod_venue.php";
url=url+"?id="+escape(id);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=function(){
		modVenueStateChanged(id);
	};
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}



// #################################################### modifica venue ####################################################

// #################################################### salva modifiche venue ####################################################


function saveVenueStateChanged(id) 
{ 
	if (xmlHttp.readyState==4)
	{ 
		var msgvn=document.getElementById("msgvenue");
		msgvn.innerHTML=xmlHttp.responseText;
		var t=setTimeout("blank('msgvenue')",3000);
	}
}


function saveVenue(id){
var indirizzo = document.getElementById("indirizzo").value;
var cap = document.getElementById("cap").value;
var tel = document.getElementById("tel").value;
var link = document.getElementById("link").value;
if (id.length==0 && id<=0)
  {
	alert('errore dati!');
	return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_save_venue.php";
url=url+"?id="+escape(id);
url=url+"&ind="+escape(indirizzo);
url=url+"&cap="+escape(cap);
url=url+"&tel="+escape(tel);
url=url+"&link="+escape(link);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=function(){
		saveVenueStateChanged(id);
	};
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}



// #################################################### salva modifiche venue ####################################################

// #################################################### cambio password ####################################################


function inviaPwd()
{
var eml=document.getElementById("cod_email").value;
var spam=document.getElementById("cod_spam").value;
if (eml.length==0)
  { 
  document.getElementById("div_cod_email").innerHTML="";
  return;
  }
if (spam.length==0)
  { 
  document.getElementById("div_cod_email").innerHTML="";
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_pwd.php";
url=url+"?eml="+escape(eml);
url=url+"&spm="+spam;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=codStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}


// #################################################### cambio password ####################################################

function emailStateChanged() 
{ 
	if (xmlHttp.readyState==3)
	{ 
		document.getElementById("innerEmail").innerHTML="";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("innerEmail").innerHTML=xmlHttp.responseText;
	}
}


function checkEmail()
{
	var eml=document.getElementById("reg_email").value;
if (eml.length==0)
  { 
  document.getElementById("innerEmail").innerHTML="";
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_checkEmail.php";
url=url+"?eml="+escape(eml);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=emailStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function userStateChanged() 
{ 
	if (xmlHttp.readyState==3)
	{ 
		document.getElementById("innerUser").innerHTML="";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("innerUser").innerHTML=xmlHttp.responseText;
	}
}


function checkUser()
{
	var usr=document.getElementById("reg_name").value;
if (usr.length==0)
  { 
  document.getElementById("innerUser").innerHTML="";
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_checkUser.php";
url=url+"?usr="+escape(usr);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=userStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}




function dataConcertoStateChanged() 
{ 
	if (xmlHttp.readyState==3)
	{ 
		document.getElementById("dataConcerto").innerHTML="";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("dataConcerto").innerHTML=xmlHttp.responseText;
	}
}


function checkDataConcerto()
{
	var art=document.getElementById("artista");
	var guest=document.getElementById("guest");
	var gg=document.getElementById("gg").value;
	var mm=document.getElementById("mm").value;
	var aa=document.getElementById("aa").value;
	var data=aa+mm+gg;
	if (data.length<8)
	{
		return;
	}
	len = art.length;
	artisti = "";
	j=0;
	for (i = 0; i < len; i++) {
		if (art[i].selected) {
			j++;
			artisti = artisti + art[i].value + "^";
		}
	}
	len = guest.length;
	for (i = 0; i < len; i++) {
		if (guest[i].selected) {
			j++;
			artisti = artisti + guest[i].value + "^";
		}
	}
if (j==0)
  { 
  document.getElementById("dataConcerto").innerHTML="";
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_dataConcerto.php";
url=url+"?art="+escape(artisti);
url=url+"&data="+escape(data);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=dataConcertoStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function checkDataConcertoNew()
{
	var art=document.getElementById("artista");
	var guest=document.getElementById("guest");
	var gg=document.getElementById("gg").value;
	var mm=document.getElementById("mm").value;
	var aa=document.getElementById("aa").value;
	var data=aa+mm+gg;
	if (data.length<8)
	{
		return;
	}
	len = art.length;
	artisti = "";
	j=0;
	for (i = 0; i < len; i++) {

			j++;
			artisti = artisti + art[i].value + "^";

	}
	len = guest.length;
	for (i = 0; i < len; i++) {

			j++;
			artisti = artisti + guest[i].value + "^";

	}
if (j==0)
  { 
  document.getElementById("dataConcerto").innerHTML="";
  return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_dataConcerto.php";
url=url+"?art="+escape(artisti);
url=url+"&data="+escape(data);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=dataConcertoStateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}





function ajxpayStateChanged(id) 
{ 
	if (xmlHttp.readyState==3)
	{ 
		document.getElementById("inspay"+id).innerHTML="";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("inspay"+id).innerHTML=xmlHttp.responseText;
	}
}


function ajxpay(evid,id)
{
	var val=document.getElementById("bpay"+id).value;
if (val.length==0)
  {
	alert('errore dati!');
	return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_pay.php";
url=url+"?val="+escape(val);
url=url+"&id="+escape(evid);
url=url+"&rowid="+escape(id);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=function(){
		ajxpayStateChanged(id);
	};
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function ajxfreeStateChanged(id) 
{ 
	if (xmlHttp.readyState==3)
	{ 
		document.getElementById("insfree"+id).innerHTML="";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("insfree"+id).innerHTML=xmlHttp.responseText;
	}
}


function ajxfree(evid,id)
{
	var val=document.getElementById("bfree"+id).value;
if (val.length==0)
  {
	alert('errore dati!');
	return;
  }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
var url="ajax_free.php";
url=url+"?val="+escape(val);
url=url+"&id="+escape(evid);
url=url+"&rowid="+escape(id);
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=function(){
		ajxfreeStateChanged(id);
	};
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}




/************	FINE AJAX   ************/


function checkvoto()
{
var radio=document.forms.votoform.voto
var i=0
while(i<radio.length && radio[i].checked==false) {
i=i+1
}
if(i>=radio.length){
alert('selezionare una delle risposte!')
return false;
}
return true;
}


function openbox3 (num,tot)
{
	for (i=1;i<=tot;i++)
	{
		tit=document.getElementById('title'+i);
		txt=document.getElementById('text'+i);
		tit.className='unselected';
		txt.className='unselected';
	}
	tit=document.getElementById('title'+num);
	txt=document.getElementById('text'+num);
	tit.className='selected';
	txt.className='selected';
}

function display (id)
{
	x=document.getElementById(id);
	if (x.style.display=='none')
	{
		x.style.display=''
	}else
	{
		x.style.display='none'
	}
}

function display_op (id,divop)
{
	x=document.getElementById(id);
	if (x.style.display=='none')
	{
		x.style.display='';
		opacity(divop,20);
	}else
	{
		x.style.display='none';
		opacity(divop,100);
	}
}

function show (id)
{
	x=document.getElementById(id);
	
		x.className='';
}

function opensub (num,tot)
{
	for (i=1;i<=tot;i++)
	{
		sub=document.getElementById('vocisubmenu'+i);
		sup=document.getElementById('vocimenu'+i);
		sub.className='unselected';
		sup.className='unselected';
	}
	sub=document.getElementById('vocisubmenu'+num);
	sup=document.getElementById('vocimenu'+num);
	sub.className='selected';
	sup.className='selected';
}

function checkdef()
{
def=document.getElementById("find").defaultValue
val=document.getElementById("find").value
	if (def===val)
	{
		return false;
	}
  

}

function foc(ogg)					
{
	ogg.value='';
	ogg.style.color='#000000';	
}

function bl(ogg)
{
	if (ogg.value=='')
	{
		ogg.value=ogg.defaultValue;
		ogg.style.color='#aaaaaa';
	}					

}

  function fromto(fromx,tox){
  var from=document.getElementById(fromx);
  var to=document.getElementById(tox);
  var trova=0;
  for (var i=0;i<to.length;i++)
  {
	  if (from.options[from.selectedIndex].value==to.options[i].value)
	  {
		  trova++;
	  }
  }
  if (trova==0)
  {
	  var newopt = new Option();
	  newopt.text=from.options[from.selectedIndex].text;
	  newopt.value=from.options[from.selectedIndex].value;
	  //newopt.selected=true
	  try{
		to.add(newopt,null);
	  }
	  catch(ex){
		to.add(newopt);
	  }
  }   
 }

 function removeOption(fromx) {
  var x=document.getElementById(fromx);
  try{
   x.remove(x.selectedIndex);
  }
  catch(ex){
   alert('Selezionare l\'elemento da rimuovere!');
   }
 }

 function removeAll(fromx){
	 var x=document.getElementById(fromx);
	 var tot=x.length;
	 for (var i=tot; i>=0; i--)
	  {
		 x.remove(i);
	  }	
 }

 function selectAll(fromx){
	 var x=document.getElementById(fromx);
	 var tot=x.length;
	 for (var i=0; i<tot; i++)
	  {
		 x.options[i].selected=true;
	  }
 }

 function mouseX(evt) {
	if (evt.pageX) return evt.pageX;
	else if (evt.clientX)
	   return evt.clientX + (document.documentElement.scrollLeft ?
	   document.documentElement.scrollLeft :
	   document.body.scrollLeft);
	else return null;
	}

 function mouseY(evt) {
	if (evt.pageY) return evt.pageY;
	else if (evt.clientY)
	   return evt.clientY + (document.documentElement.scrollTop ?
	   document.documentElement.scrollTop :
	   document.body.scrollTop);
	else return null;
	}
	
 function displayElement(id,event,vid,dir) {
			ogg=document.getElementById(id).style;
			if(ogg.display=="none") {
			ogg.display="";
			if (dir>1)
			{
				ogg.top=mouseY(event)+"px";
				ogg.left=mouseX(event)+"px";
			}else{
				ogg.top=mouseY(event)+"px";
				ogg.left=mouseX(event)-270+"px";
			}
			showVenue(vid);
			}
 }

 function hideElement(id) {
	ogg=document.getElementById(id).style;
	ogg.display='none';
 }