function controllo_mailing(frm,strDir)
{
		
	
	var backgroundStd='#ffffff';									//Colore originale dello sfondo dell'elemento
	var textStd='#000000';												//Colore originale del testo dell'elemento
	var backgroundError='#ff5c00';								//Colore che assumerà l'elemento del form in caso di errore
	var textError='#000000';											//Colore del testo per l'elemento del form in caso di errore


	var dirSet;										//Array contenitore delle direttive
	var i;
	var fieldName,fieldForm,fieldType,mandatory;	//Contengono le info di ogni direttiva
	var emptyError=false;													//Flag di errore "campo obbligario vuoto"
	var check_ok=true;														//Flag "validazione eseguita con successo"
	var no_error=true;														//Flag "nessun errore"

	//Se si utilizza la proprietà 'id' (e non 'name') nel tag form
	if (typeof (frm)!='object' && typeof (frm)=='string') {
		var frm=document.getElementById(frm);
	}

	
	if (strDir!="")			//se ci sono direttive..
	{
		dirSet=strDir.split("/");	//separale ed inseriscile in un array
		//per ogni direttiva trovata.. (ne esiste una per ogni campo)
		for (el=0; el < (dirSet.length); el++)
		{	//separa nome_campo,obbligatorio,tipo_controllo,nome_nel_form
			dir=dirSet[el].split(",");
			//salva i dati della direttiva..
			fieldName=dir[0];	//proprieta' NAME del campo
			if (dir[1]!="")	mandatory=true;
			else	mandatory=false;
			if (dir[2]!="")	fieldType=dir[2].toUpperCase();
			else	fieldType="NORMAL";
			if (dir[3]!="") 
			{
				//concatena i campi seguenti (frasi con virgole)
				fieldForm="";
				for (i=3;i<dir.length;i++) 
				{
					fieldForm+=dir[i]
					if (dir.length>(i+1)) fieldForm+=",";
				}
			}
			else	fieldForm=fieldName;
			frm[fieldName].style.backgroundColor=backgroundStd;
			frm[fieldName].style.color=textStd;
			fieldValue=frm[fieldName].value;
			//controlla se il valore e' vuoto..
			if (fieldValue=='') 
			{				
				if (mandatory==true)	//se e' vuoto ma obbligatorio..
				{	emptyError=true;
					frm[fieldName].style.backgroundColor=backgroundError;
					frm[fieldName].style.color=textError;
					//alert("Campo obbligatorio ("+fieldName+")");
				}
			}
			else 
			{ 
				//controlli in base al tipo di campo (se il campo non e' vuoto)
				switch (fieldType)
				{
					case 'TEMAIL':
						check_ok=isEmail(fieldValue,fieldForm);
					break;
				}
				if (check_ok==false) 
				{
					//Errore di validazione!
					frm[fieldName].style.backgroundColor=backgroundError;
					frm[fieldName].style.color=textError;
					no_error=false;	//flag generale
					check_ok=true;	//ripristina per il prossimo ciclo
					emptyError=true;
				}
			}
		} //chiude for
		if (emptyError)
		{
			alert('ATTENZIONE: i campi obbligatori evidenziati non sono immessi correttamente!');
			return false;
		}			
	} //chiude if
} //chiude quick_check_old


// VERIFICA EMAIL
//       isEmail(fieldValue,fieldForm)
function isEmail(what,fname)
{
	var errMsg="Il campo "+fname+" non contiene un indirizzo email valido.\nFormato corretto: mionome@miosito.it";
  var i=new RegExp("^[\\w\\-\\'\\#\\%\\.\\,\\$\\!\\+\\*]+@([\\w\\-\\'\\#\\%\\~\\,\\$\\!\\+\\*]+\\.)+[\\w]{2,4}$");
  if(!i.test(what)) {alert(errMsg); return false;}
  return true;
}

