//********************************* funzioni per settare opacit� di un oggetto facendo un fade ************


function fadeIn(objId,opacity,max) {
	if (document.getElementById) {
		 obj = document.getElementById(objId);
		 if (opacity <= max) {
		 setOpacity(obj, opacity);
		 opacity += 8;
		 window.setTimeout("fadeIn('"+objId+"',"+opacity+","+max+")", 20);
		 } else {
		 return 0;
		 }
	 }
}

function fadeOut(objId,opacity) {
	 if (document.getElementById) {
		 obj = document.getElementById(objId);
		if (opacity >= 0) {
		 setOpacity(obj, opacity);
		 opacity -= 8;
		 window.setTimeout("fadeOut('"+objId+"',"+opacity+")", 20);
		 } else {
		 obj.style.display = 'none';
		 return 0;
	 	}
	}
}

function setOpacity(obj, opacity) {
	 opacity = (opacity == 100)?99.999:opacity;
	 // IE/Win
	 obj.style.filter = "alpha(opacity:"+opacity+")";
	 // Safari<1.2, Konqueror
	 obj.style.KHTMLOpacity = opacity/100;
	 // Older Mozilla and Firefox
	 obj.style.MozOpacity = opacity/100;
	 // Safari 1.2, newer Firefox and Mozilla, CSS3
	 obj.style.opacity = opacity/100;
}

function Top(obj)
{
	 var curtop = 0;
	 if (obj.offsetParent)
	 {
		 while (obj.offsetParent)
		 {
			 curtop += obj.offsetTop
			 obj = obj.offsetParent;
		 }
	 }
	else if (obj.y)
		 curtop += obj.y;
	return curtop;
}


function loadImage(image, obj){
	 var target = document.getElementById('boxVoci');
	 var html = document.getElementsByTagName("HTML");
	 //document.getElementById('overlay').style.height = (600+html[0].offsetHeight)+"px";
	 document.getElementById('overlay').style.height = (700+document.getElementById('shadow').offsetHeight)+"px";
	 document.getElementById('overlay').style.display = "block";
	 document.getElementById('boxVoci').style.display = "block";
	 document.getElementById('lightBox').style.top = Top(obj)+"px";
	 document.getElementById('boxVoci').style.display = "block";
	
	 document.body.style.scroll = "no";
	 fadeIn('overlay',0,60);
	 fadeIn('boxVoci',0,99);
	
	target.innerHTML = '<p><img src="'+image+'" alt="loading ajax" /></p>';
}


function overlayClose(){
	 fadeOut('overlay',60,0);
	 fadeOut('boxVoci',99,0);
	var listaBanners = $$('.Layer1');
	var i=0;
	
	for (i=0; i<listaBanners.length; i++){
		listaBanners[i].style.display = "inherit";
	}
}




//banner

function apri(idBanners){
	window.open("index.php?option=banners&task=open&idBanners="+idBanners);
}


// drag and drop
var oDrag = null
var drag = false
var leave = false
var oBasket,x,y
//se questa variabile � settata su false sul sito non possimo usare il drag and drop perch� non viene associato l'evento del mouse
var dragAndDropEnabled = false;

function mdown(e) {
	//funzione per il riconoscimento dell'oggetto da grabbare
	// compatibilit� crossbrowser
	if (!e) var e = window.event;
	// grab elemento
	oDrag = (e.target) ? e.target : e.srcElement;
	// verifico se l'elemento � draggabile
	if ( oDrag.className=="drag"){
		//imposto il postizionamento relativo per permettere il drag
		oDrag.style.position = "relative";
		// imposto la modalit� di drag
		drag = true;
		// prendo le coordinate del mouse
		x = e.clientX;
		y = e.clientY;
		//abilito l'evento onmousemove e onmouseup
		document.onmousemove=mdrag_on;
		document.onmouseup=mdrag_off;
	}
	else {
		// esco dalla la modalit� di drag
		drag = false;
		oDrag = null;
	}
	return false
}


function mdrag_on(e) {
	//	funzione di movimento
	// compatibilit� crossbrowser
	if (!e) var e = window.event;
	// se siamo in modalit� di drag cambio le coordinate dell'elemento
	if (drag){
		oDrag.style.left = (e.clientX -x)+'px';
		oDrag.style.top = (e.clientY -y)+'px';
	}
	return false
}

function mdrag_off(e) {
	//	funzione di movimento
	// compatibilit� crossbrowser
	if (!e) var e = window.event;
	// esco dalla la modalit� di drag
	drag = false;
	leave = true;
	try {
		// reimposto le coordinate iniziali
		oDrag.style.left = '0px';
		oDrag.style.top = '0px';
		oDrag.style.position = '';
	//	alert(document.getElementById('topMenu').innerHTML);
	} catch(z) { }		
	oDrag=null;
}

function mover(e) {
	//funzione gestione basket
	//onmouseover controllo se ho un elemento che stavo strascinando
	// compatibilit� crossbrowser
	if (!e) var e = window.event;
	// grab elemento
	oBasket = (e.target) ? e.target : e.srcElement;
	//se ho un l'elemento draggabile , non trovo in modalit� grab ,e sono sun basket 
	try {
		oBasket.appendChild(oDrag);
		if ( oDrag.className=="drag" && oBasket.className=="basket" && leave){
			if (eval(oBasket.id.substr(4,oBasket.id.length))>0){
				//associaFattura(oDrag.id.substr(4,oDrag.id.length),oBasket.id.substr(4,oBasket.id.length));
				Alert('Ho droppato');
			}
			oDrag = null;		
		}				
	} catch(z) { 
	}			
	leave = false;
	return false;
}	

if (dragAndDropEnabled){
	document.onmousedown = mdown;
	document.onmouseover = mover;
}

function caricaComuni(selProv){
	var idProvincia = selProv.options[selProv.selectedIndex].value;
	var par = selProv;
	//alert (parent);
	while (par.nodeName!="P"){
		par = par.parentNode;
		//alert (parent.nodeName);
	}
	var trg = par.nextSibling;

	new Ajax.Request('AFFramework/utility/utility.ajax.php',
		{
			method:'get',
			parameters: {option: 'utility', task: 'getComuniFromProvincia', idProvincia: idProvincia},
			onSuccess: function(transport){
				 var response = transport.responseText || 'ERROR';
				 //alert (response);
				 //response = '<p class="textInput">maremma maiala: <select></select></p>';
				 trg.innerHTML = response;
			 },
			 onFailure: function(){ alert('Errore non previsto. Ci scusiamo per il disagio') }
		});
}


var emailregex = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
