function getElementsByClassName(classname){
    var a = [];
    var re = new RegExp('\\b' + classname + '\\b');
    var els = document.all?document.all:document.getElementsByTagName("*");
    for(var i=0,j=els.length; i<j; i++)
        if(re.test(els[i].className))a.push(els[i]);
    return a;
}
function indirizzoEmailValido(indirizzo) {
  if (window.RegExp) {
    var nonvalido = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
    var valido = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";
    var regnv = new RegExp(nonvalido);
    var regv = new RegExp(valido);
    if (!regnv.test(indirizzo) && regv.test(indirizzo))
      return true;
    return false;
	}
  else {
    if(indirizzo.indexOf("@") >= 0)
      return true;
    return false;
  	}
  };
function createnode(arc){
	newimg=document.createElement('span');
	newimg.className="controllo-form";
	newimg.innerHTML='<img src=http://www.gruppotoscano.it/img/ast.gif>';
	arc.appendChild(newimg);	
}
function createnode2(arc2){
	newimg2=document.createElement('span');
	newimg2.className="controllo-form";
	newimg2.innerHTML='La Password non coincide';
	arc2.appendChild(newimg2);	
}
function createnode3(arc3){
	newimg3=document.createElement('span');
	newimg3.className="controllo-form";
	newimg3.innerHTML='<img src=http://www.gruppotoscano.it/img/ast.gif>';
	arc3.appendChild(newimg3);	
}
function createnode4(arc4){
	newimg4=document.createElement('span');
	newimg4.className="controllo-form";
	newimg4.innerHTML='La password richiede minimo 6 caratteri';
	arc4.appendChild(newimg4);	
}
function controllo(gg){
	err=0;
	erx=0;
	chan=getElementsByClassName("controllo-form");
	for(z=1;z<=chan.length;z++){
		node=chan[z-1];
		removed=node.parentNode.removeChild(node);
	}
  	reqfields=document.getElementById('required').value.split(',');
	for(i=0;i<reqfields.length;i++){
		f=document.getElementById(reqfields[i]);
		if(reqfields[i]=="pr1" ){
			var almenouno = false ;
			for(x=0;x<document.contact.pr1.length;x++){
				if (document.contact.pr1[x].checked){
					almenouno=true;
		   		 }
								   }
			if(!almenouno){
				arc=f.parentNode;
				createnode(arc);
				err++;
			}
			
			
		}else if(reqfields[i]=="email"){
			if(!indirizzoEmailValido(f.value)){
				arc3=f.parentNode;
				createnode3(arc3);
				err++;
			}
		}else if((reqfields[i]=="Password1" && f.value != "") || (reqfields[i]=="Password2"  && f.value != "")){
			if(reqfields[i]=="Password1"){
				temp=f.value;
					if(temp.length<6){
						arc4=f.parentNode;
						createnode4(arc4);
						err++;
					}
				}
				if(reqfields[i]=="Password2"){
				if(f.value!= temp){
					arc2=f.parentNode;
					createnode2(arc2);
					err++;
				}
			}
		}else if((reqfields[i]=="giorno" || reqfields[i]=="mese" || reqfields[i]=="anno")){
			if(f.value=="" && erx==0){
			arc=f.parentNode;
			createnode(arc);
			err++;
			erx++;
			}
			}else if((reqfields[i]=="oggi" || reqfields[i]=="domani" || reqfields[i]=="Locali" || reqfields[i]=="Qualcosa"  )){
			if(f.value.length >248 ){
			arc3=f.parentNode;
			createnode3(arc3);
			err++;
			}
		
		}else{
		if(f.value==""){
			arc=f.parentNode;
			createnode(arc);
			err++;
		}
		}
	}
	if(err>0){
		location.href="#req";
		$.prompt('Attenzione compilare tutti i campi obbligatori!',{buttons:{Ok:true},prefix:'cleanblue',opacity:0, top:'220px'});
		return false;	
	}
}
function associa(){
	var els = document.all?document.all:document.getElementsByTagName("form");
    for(var i=0,j=els.length; i<j; i++){
		asc=els[i];
		//alert(asc.TagName);
		if(asc.getAttribute('id')=="cform"){
			asc.onsubmit= function () {return controllo(this);}	
		}
	}
}
window.onload=function(){
	associa();
}
