// JavaScript Document
window.onresize = function(){
	repos();
}


$(function(){
	
	var flag=0;				//per sapere se devo aprire o chiudere il div aperto dal menu
	var appDiv="";			//tiene memoria del menu aperto
	var colorOut='#ffffff';	//colore del menu non attivo
	var colorIn='#cd071e';	//colore del menu attivo

	   
	repos();
	
	$('#m').css("visibility",'visible');
	$('#footer').css("visibility",'visible');	   
		   
		   
	//funzione slidemaximage	   
	jQuery('img.slidemaximage').maxImage({
		isBackground: true,
		slideShow: true,
		slideShowTitle: false,
		slideDelay: 5, //secondi
		maxFollows: 'height',
		resizeMsg: {show: false}
	});
	
	
	
	//inizializzazione variabli
	var appMenu="mm";	//memorizza il menu
	var effetto='easeOutBounce';	//effetto per easing
	var divMin='-500';		//posizione piu alta dei div
	var divMax='800';		//posizione piu bassa dei div
	
//inizializzazione div	
	$("body").stop().animate({opacity: 0.5},0);
	$("#m").stop().animate({opacity: 0.0},0);
	
	$("body").stop().animate({opacity: 1},3000,function(){$("#m").stop().animate({ opacity: 1}, 1000,effetto);});
	
	$("#menu").stop().animate({opacity: 0.0},0,function(){$(this).stop().animate({ opacity: 0.75}, 2000,effetto);   });
	$('#mm').stop().animate({opacity: 0.5}, 2000);
	$('#mm').css('color','#cd071e');
	$("#footer").stop().animate({opacity: 0.0},0,function(){$(this).stop().animate({ opacity: 0.75}, 2000,effetto);   });
	
	
	
	$("#dark").stop().animate({opacity: 0.0},0);
	$("#contacts").stop().animate({top: divMin,opacity: 0.0},0);
	$("#newsletter").stop().animate({top: divMin,opacity: 0.0},0);
	$("#gallery").stop().animate({top: divMin,opacity: 0.0},0);
		$("#bio").stop().animate({top: divMin,opacity: 0.0},0);



//nel clic sul menu	
	$(".menu").click(function () {  
    	//normalizzo il menu quello prima attivo
		$('#'+appMenu).stop().animate({opacity: 1.0}, "slow");
		$('#'+appMenu).css('color','#ffffff');
		$("#"+appMenu.substring(1)).stop().animate({opacity: 0.0, top:divMax},300,function(){$(this).stop().animate({ top:divMin},0);   });
	
		
   		//attivo il menu
		$(this).stop().animate({opacity: 0.75}, "slow");
		$(this).css('color','#cd071e');
		appMenu=$(this).attr("id");
		
		
		if($(this).attr("id")=="mm"){
			//mostro la m e nascondo il nero
			$("#dark").stop().animate({opacity: 0.0}, 2000,effetto);
			$("#m").stop().animate({opacity: 1}, 1000,effetto);
		}
		else{
			//mostro il nero, nascondo la m e mostro il div
			$("#dark").stop().animate({opacity: 0.75}, 2000,effetto);
			$("#m").stop().animate({opacity: 0.0}, 1000,effetto);
			$("#"+$(this).attr("id").substring(1)).stop().animate({opacity: 1.0, top: '100'},500);
			//dominuisco la saturazione del titolo e se ci sono dei campi form
			$(".titoloDiv").stop().animate({opacity: 0.75}, 500);
			if($("form")){
				$("input").stop().animate({opacity: 0.75}, 500);
				$("textarea").stop().animate({opacity: 0.75}, 500);
				
				
			
			}
			
		}
	}); 
  
  
 
  
  
//gestisco mouseover/out
	   // Al passaggio del mouse  
    $(".menu").hover(function () {  
		//se non è quello attualmente attivo
		 if($(this).attr("id") != appMenu){
					// imposta l'opacità al 100%  
					$(this).stop().animate({  
						opacity: 0.25  
					}, 'slow');
					}
			   },  
				 
			   // quando il mouse non è sull'elemento  
			   function () {  
				 	if($(this).attr("id") != appMenu){
					   // imposta l'opacità al 100%  
							$(this).stop().animate({  
								opacity: 1.0  
							}, 'slow');
					}
		
   });
});














//chiamata dal pulsante di invio del form (che quindi non è un submit). Controlla l'inserimento corretto dei campi.
//i campi OBBLIGATORI hanno un id cosi strutturato: lettera (cCampi) + numeroProgressivo	(es "c1,c2,c3,..")
//passo nome form, n°campi obbligatori +1, n°campo della mail, lettera cCampi, id div errore
function checkForm(nomeForm,nMax,nMail,cCampi,idErrore){
var erroreCampo="all fields are mandatory";	//messaggio di errore nell'idErrore per campi non compilati o non corretti
var flagForm="";		//se c'è errore prende il nome del campo per metterci il focus


	
	for (i=1;i<nMax;i++){
		if (document.getElementById(cCampi+i).value.length < 2){
			flagForm=cCampi+i;
			i=nMax;
		}
		else{
			var miaStringa = document.getElementById(cCampi+i).value;
			if (miaStringa.charAt(0) == " "){
				flagForm=cCampi+i;
				i=nMax;
			}
			else{
				if(i==nMail){
					var espressione =  /^[_a-z0-9+-]+(\.[_a-z0-9+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/;
					var mail=document.getElementById(cCampi+ nMail).value;
					if (!espressione.test(mail)){
						flagForm=cCampi+i;
						erroreCampo="email is not correct";
						i=nMax;
					}
					else{
						document.getElementById(idErrore).innerHTML="";
						}
				}
			}
		}
	} 


	if(flagForm==""){
	
		document.forms[nomeForm].submit();
		document.forms[nomeForm].reset();
	}
	else{
		document.getElementById(flagForm).focus();
		document.getElementById(idErrore).innerHTML=erroreCampo;
		
	}
		
		
	
}


<!------------------------------------!>
<!----- FUNZIONI CHIAMATE ------------!>
<!------------------------------------!>


//scrive il nome della galleria su cui si è sopra
function titGallery(a){
	$("#titGal").text(a);
}




//posiziona mmmmmmh, footer e i div che le voci di menu aprono
function repos(){
	$("#m").css("top",($(window).height()/2)-($("#m").height()/2));
	$("#footer").css("top",$(window).height()-$("#footer").height());	
	for(i=1;i<$("#menu li").length+1; i++){
			id=$("#menu li:nth-child("+i+")").attr("rel");
			$("#"+id).css("left",($(window).width()/2)-($("#"+id).width()/2))
	}
}


