// JavaScript Document

function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}



function PrintMessage(msg){
         alert(msg);
}



function VerifyField(name, type, value){
             
			var verify = false;
		 	if((value=="") && ((type=="text") || (type=="password"))){
			      verify = false;
			  } else {
			      verify = true;
				  }
			
			if((type=="radio") || (type=="checkbox")){
			     var radio = document.forms[0][name]; 
			     for(var q = 0; q<radio.length; q++){
			        if(radio[q].checked){
					verify = true;
					break;
					}else{ 
					verify = false;
					}
				 }
			  }
			  
			if((type=="checkbox")   && (name=="consenso_al_trattamento")){
				var check = document.forms[0][name]; 
			   if(check.checked){	
			     verify=true;
			   }else{
				  verify=false;
			   }
			}
			  
		 
		 return verify;
   }



var nFields = 0;
var FieldsLength = 0;


	function validazione(){
	
	var theForm = document.getElementById("FormPrenotazione");
	var FieldSet = theForm.getElementsByTagName("FIELDSET");
	var theField = false;
	var theFieldId = false;
	FieldsLength = FieldSet.length;
	
	for(var i=0; i<FieldsLength; i++){
	    if((FieldSet[i].style.display=="") || (FieldSet[i].style.display=="block")){
		theField = document.getElementById(FieldSet[i].id);
		theFieldId = FieldSet[i].id;
		break;
		}
	}
	
	
	if(theField){
	  
	      var li = getElementsByClassName(theField, "li", "campo_obbligatorio");
	
	      if((li.length) && (li.length>0)){
		  var conferma = false;
		  }else{
		  var conferma = true;
		  }
		  
	}	  
		  
		  for(var k=0; k<li.length; k++){
		      var input = li[k].getElementsByTagName("input")[0];
			  var control = false;
			  control = VerifyField(input.name, input.type, input.value);
			  
			  
	          if(!control){
			     PrintMessage("Attenzione, il campo '"+input.name.replace("_"," ")+"' è obbligatorio.");
				 input.focus();
				 conferma = false;
				 break;
			  }else{
			    conferma = true;
			  }
		  }
	   
	   
		if(conferma){
		
		     if(nFields<(FieldsLength-1)){
			     document.getElementById("BackButton").style.visibility="visible";
				 theForm.getElementsByTagName("FIELDSET")[nFields].style.display="none";
				 theForm.getElementsByTagName("FIELDSET")[nFields+1].style.display="block";
				 nFields++;
				 ShowPath(nFields);
				 return false;
		     } else{
			     document.getElementById("BackButton").style.visibility="hidden";
				 theForm.submit();
				 return true;
			 }
		} else {
		   return false;
		   }
		   
		   
		   
		   
	  }		
	  
	  
function GoBack(){
		     if((nFields>0) && (nFields<FieldsLength)){

                 var theForm = document.getElementById("FormPrenotazione");
				 theForm.getElementsByTagName("FIELDSET")[nFields].style.display="none";
				 theForm.getElementsByTagName("FIELDSET")[nFields-1].style.display="block";
				 nFields--;
				 ShowPath(nFields);
		     }
			 
}



function ShowPath(n){
         var Path = document.getElementById("Path");
		 if(Path){
		 var li = Path.getElementsByTagName("LI");
             for(var k=0; k<li.length; k++){
			     li[k].className = "invisible";
				 if(n==k){
				 li[k].className = "visible";
				 }
			 }
		 }

}


function VerifyDispo(obj){

	if(obj.checked){ 
	  if(obj.value=="totale"){
	  document.getElementById('PlanWeek').style.visibility="hidden";
	  }else{
	  document.getElementById('PlanWeek').style.visibility="visible";
	  }
	}else{ 
	document.getElementById('PlanWeek').style.visibility="hidden";
	}

}

