
/* funzioni per validazioni */

function valida_array(array)
         {
         pulisci_campi(array);

         for (var i=0;i<array.length;i++)
             {
             switch (array[i][1]){
               case "text":
                    {if (!is_text(array[i][0]))
                       return false;
                        break;
                      }
               
               case "password":
               {if (!is_text(array[i][0]))
                  return false;
                   break;
                 }
          
               case "email":
               {if (!is_email(array[i][0]))
                  return false;
                   break;
                 }     
               
               case "int":
               {
            	   if (isNaN(array[i][0].value) || array[i][0].value=="")
            	   {
            	   alert("Numero non Valido");
            	   campo_errato(array[i][0]);
            	   return false;
            	   }
        	   break;
             } 
               
               case "date":
                    {if (!is_date(array[i][0]))
                       return false;
                        break;
                        }

				case "hour":
                    {if (!is_hour(array[i][0]))
                       return false;
                        break;
                        }

               
                case "textarea":
                    {if (!is_textarea(array[i][0]))
                       return false;
                        break;
                        }

                case "upload":
                    {if (!controlla_upload(array[i][0],array[i][2]))
                       return false;
                        break;
                        }
				
				case "captcha":
                    {if (!control_captcha(array[i][0]))
                       return false;
                        break;
                        }
                 
				case "checkbox":
                {if (!controlla_checkbox(array[i][0]))
                   return false;
                    break;
                    }    
               }

             }

             return true;
         }

function is_date(ogg){
        f=ogg.value;
       
	var dmy = f.split(/-/);
	var td = new Date( dmy[2], dmy[1]-1, dmy[0] );
	var result = (td.getFullYear() == parseInt(dmy[2],10) && td.getMonth() == parseInt(dmy[1]-1,10) && td.getDate() == parseInt(dmy[0],10));
	if (result == false) {
		campo_errato(ogg);       
		alert('Data non valida'); 
	}
	return result;
}


function pulisci_campi(array)
         {
             for (var i=0;i<array.length;i++)
             {
               array[i][0].className="";
             }
         }


function campo_errato(campo)
         {
		  campo.className = "campo_errato";
         }
         
function is_text(ogg)
         {
            if (ogg.value!="")
               return true;
            else
                {
                  campo_errato(ogg);
                  alert("Un campo non  stato inserito");
                return false;
                }
         }

function is_textarea(ogg)
         {
            if (ogg.value!="")
               return true;
            else
                { 
                  campo_errato(ogg);
                  alert("Un campo non è stato inserito");
return false;
                }
         }

		 
function control_captcha(ogg)
         {
            if (ogg.value!="")
               {
			   /*$.ajax({
			   type: "POST",
			   url: "index.php?p=ajax&f=captcha",
			   data: "captcha="+ogg.value,
			   //Evento di riuscita
			   success: function(msg){
					 if (msg == true)
						{
						return true;
						}
					else
						{ 
						  campo_errato(ogg);
						  alert("Errore Controllo Captcha");
						return false;
						}
					}
				});*/
			   		return true;	   
			   }
            else
                { 
                  campo_errato(ogg);
                  alert("Un campo non è stato inserito");
return false;
                }
         }		 


function controlla_upload(field, ext)
         {
         var array = ext.split(",");

         for (var i=0;i<array.length;i++)
             {
             if (controlla_estensione(field,array[i]))
                return true;
             }
         
         alert('Il file caricato deve essere un .' + ext + ' .');
         return false;
         }

function controlla_estensione(field, ext) {
  if (field.value.indexOf('.' + ext) == -1) {
  field.focus();
  return false; 
  } 
  return true;
} 

function controlla_checkbox(ogg)
	{
	if (ogg.checked == false)
		{
		campo_errato(ogg);
		alert("Compilare tutti i dati obbligatori");
		return false;
		}
	else
		return true;
	
	}

function is_hour(timeStr)
	{
	
	if (timeStr == null || timeStr=="")
		{campo_errato(timeStr);
		alert("Ora non valida");
		return false;
		}
	
	//var time = split(timeStr.value,":");
	var time = timeStr.value.split(/:/);
	
	var h=time[0];
	var m=time[1];
	
	if (h == null || h<0 || h>23)
		{campo_errato(timeStr);
		alert("Ora non valida");
		return false;
		}
		
	if (m == null || m<0 || m>59)
		{campo_errato(timeStr);
		alert("Ora non valida");
		return false;
		}
	
	return true;
	
}

	
function is_email(email) {
	   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	  
	   if(reg.test(email.value) == false) {
	      alert('Indirizzo Email non valido');
	      campo_errato(email);
	      return false;
	   }
	   
	   return true;
	}	


function valida_login()
         {
          var utente=document.getElementById("utente");
         var password=document.getElementById("password");

         var array = new Array(Array(utente,"text"),Array(password,"text"));

         if (valida_array(array))
            {
            document.getElementById("form_login").submit();
            }

         }


