//Sólo admite direcciones de correo electrónico válidas
function isEmail(value) {
	var regExp = /^([a-zA-Z0-9_\-])([a-zA-Z0-9_\-\.]*)@(\[((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}|((([a-zA-Z0-9\-]+)\.)+))([a-zA-Z]{2,}|(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\])$/;
  return regExp.test(value);
}

function trim(str) {
	str=str.replace(/^\s*|\s*$/g,"");
	return str;
}

function validateRecomendUs(form)
{ 
	var etiqueta;
	var mensaje="";
	var firstErrorControl=null;
	
	etiqueta=document.getElementById("youremail");
	form.Origen.value=trim(form.Origen.value);
	if(form.Origen.value.length<1 || !isEmail(form.Origen.value))
	{
		mensaje="Attenzione: inserirre il campo correttamente \"La tua mail\" \n";
		etiqueta.innerHTML="* La tua mail:";
		etiqueta.className="errorform";
		firstErrorControl=form.Origen;
	}
	else
	{ 
		etiqueta.innerHTML="La tua mail:";
		etiqueta.className="textocentrado";
	}
	
	etiqueta=document.getElementById("friendsemail");
	form.Destino.value=trim(form.Destino.value);
	if(form.Destino.value.length<1 || !isEmail(form.Destino.value))
	{
		mensaje=mensaje+"Attenzione: inserirre il campo correttamente \"Vuoi consigliarla ad un tuo amico\" \n";
		etiqueta.innerHTML="* Vuoi consigliarla ad un tuo amico:";
		etiqueta.className="errorform";
		if (firstErrorControl == null)
		{ 
			firstErrorControl=form.Destino;
		}

	}
	else
	{ 
		etiqueta.innerHTML="Vuoi consigliarla ad un tuo amico:";
		etiqueta.className="textocentrado";
	}
	
	
	if (mensaje=="")
	{
		return true;
	}
	else
	{
		alert(mensaje);
		firstErrorControl.select();
		firstErrorControl.focus();
		return false;
	}
}

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone)
{
	var phoneNumberDelimiters = "()- ";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 9;

	s=stripCharsInBag(strPhone,validWorldPhoneChars);
	return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function validateBrochure(form)
{
	var etiqueta;
	var mensaje="";
	var firstErrorControl=null;
	
	etiqueta=document.getElementById("FirstName");
	form.txtFirstName.value=trim(form.txtFirstName.value);
	if(form.txtFirstName.value.length<1)
	{
		mensaje="Attenzione: inserirre il campo \"Nome\"\n";
		etiqueta.innerHTML="* Nome:";
		etiqueta.className="errorform";
		firstErrorControl=form.txtFirstName;
	}
	else
	{ 
		etiqueta.innerHTML="Nome:";
		etiqueta.className="textoizquierda";
	}
	
	etiqueta=document.getElementById("LastName");
	form.txtLastName.value=trim(form.txtLastName.value);
	if(form.txtLastName.value.length<1)
	{
		mensaje=mensaje+"Attenzione: inserirre il campo \"Cognome\"\n";
		etiqueta.innerHTML="* Cognome:";
		etiqueta.className="errorform";
		if (firstErrorControl == null)
		{ 
			firstErrorControl=form.txtLastName;
		}

	}
	else
	{ 
		etiqueta.innerHTML="Cognome:";
		etiqueta.className="textoizquierda";
	}

	etiqueta=document.getElementById("Email");
	form.txtEmail.value=trim(form.txtEmail.value);
	if(form.txtEmail.value.length<1 || !isEmail(form.txtEmail.value))
	{
		mensaje=mensaje+"Attenzione: inserirre il campo correttamente \"E-mail\".\n";
		etiqueta.innerHTML="* E-mail:";
		etiqueta.className="errorform";
		if (firstErrorControl == null)
		{ 
			firstErrorControl=form.txtEmail;
		}

	}
	else
	{ 
		etiqueta.innerHTML="E-mail:";
		etiqueta.className="textoizquierda";
	}
	
	etiqueta=document.getElementById("Email2");
	form.txtEmail2.value=trim(form.txtEmail2.value);
	if(form.txtEmail2.value.length<1 || !isEmail(form.txtEmail2.value) || (form.txtEmail2.value!=form.txtEmail.value))
	{
		mensaje=mensaje+"Attenzione: inserirre il campo \"Conferma Email\" correttamente, deve essere la stessa \"Email\"\n";
		etiqueta.innerHTML="* Conferma Email:";
		etiqueta.className="errorform";
		if (firstErrorControl == null)
		{ 
			firstErrorControl=form.txtEmail2;
		}

	}
	else
	{ 
		etiqueta.innerHTML="Conferma Email:";
		etiqueta.className="textoizquierda";
	}
	
	etiqueta=document.getElementById("Country");
	if(form.selCountry.selectedIndex==0)
	{
		mensaje=mensaje+"Attenzione: inserirre il campo \"Paese\".\n";
		etiqueta.innerHTML="* Paese:";
		etiqueta.className="errorform";
		if (firstErrorControl == null)
		{ 
			firstErrorControl=form.selCountry;
		}

	}
	else
	{ 
		etiqueta.innerHTML="Paese:";
		etiqueta.className="textoizquierda";
	}
	
	etiqueta=document.getElementById("Phone");
	if(form.txtPhone.value!="" && checkInternationalPhone(form.txtPhone.value)==false)
	{
		
		mensaje=mensaje+"\"Telefono di contatto\" correttamente\n";
		etiqueta.innerHTML="* Telefono di contatto:";
		etiqueta.className="errorform";
		if (firstErrorControl == null)
		{ 
			firstErrorControl=form.txtPhone;
		}

	}
	else
	{ 
		etiqueta.innerHTML="Telefono di contatto:";
		etiqueta.className="textoizquierda";
	}

	
	if(form.SendMethod[0])
	{
		if(form.SendMethod[0].checked)
		{
			etiqueta=document.getElementById("Address");
			form.txtAddress.value=trim(form.txtAddress.value);
			if(form.txtAddress.value.length<1)
			{
				mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Indirizzo\" completo.\n";
				etiqueta.innerHTML="* Indirizzo:";
				etiqueta.className="errorform";
				if (firstErrorControl == null)
				{ 
					firstErrorControl=form.txtAddress;
				}
		
			}
			else
			{ 
				etiqueta.innerHTML="Indirizzo:";
				etiqueta.className="textoizquierda";
			}
			etiqueta=document.getElementById("City");
			form.txtCity.value=trim(form.txtCity.value);
			if(form.txtCity.value.length<1)
			{
				mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Citá\"\n";
				etiqueta.innerHTML="* Citt&aacute;:";
				etiqueta.className="errorform";
				if (firstErrorControl == null)
				{ 
					firstErrorControl=form.txtCity;
				}
		
			}
			else
			{ 
				etiqueta.innerHTML="Citt&aacute;:";
				etiqueta.className="textoizquierda";
			}
			
			etiqueta=document.getElementById("Zip");
			form.txtZip.value=trim(form.txtZip.value);
			if(form.txtZip.value.length<1)
			{
				mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Codice Postale\"\n";
				etiqueta.innerHTML="* Codice Postale:";
				etiqueta.className="errorform";
				if (firstErrorControl == null)
				{ 
					firstErrorControl=form.txtZip;
				}
		
			}
			else
			{ 
				etiqueta.innerHTML="Codice Postale:";
				etiqueta.className="textoizquierda";
			}
			
			etiqueta=document.getElementById("State");
			form.txtState.value=trim(form.txtState.value);
			if(form.txtState.value.length<1)
			{
				mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Regione\"\n";
				etiqueta.innerHTML="* Regione:";
				etiqueta.className="errorform";
				if (firstErrorControl == null)
				{ 
					firstErrorControl=form.txtState;
				}
		
			}
			else
			{ 
				etiqueta.innerHTML="Regione:";
				etiqueta.className="textoizquierda";
			}
		}
		else
		{		
			etiqueta=document.getElementById("Address");
			etiqueta.innerHTML="Indirizzo:";
			etiqueta.className="textoizquierda";
			etiqueta=document.getElementById("City");
			etiqueta.innerHTML="Citt&aacute;:";
			etiqueta.className="textoizquierda";
			etiqueta=document.getElementById("Zip");
			etiqueta.innerHTML="Codice Postale:";
			etiqueta.className="textoizquierda";
			etiqueta=document.getElementById("State");
			etiqueta.innerHTML="Regione:";
			etiqueta.className="textoizquierda";
		}
	}
	else
	{
		etiqueta=document.getElementById("Address");
		form.txtAddress.value=trim(form.txtAddress.value);
		if(form.txtAddress.value.length<1)
		{
			mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Indirizzo\" completo.\n";
			etiqueta.innerHTML="* Indirizzo:";
			etiqueta.className="errorform";
			if (firstErrorControl == null)
			{ 
				firstErrorControl=form.txtAddress;
			}
	
		}
		else
		{ 
			etiqueta.innerHTML="Indirizzo:";
			etiqueta.className="textoizquierda";
		}
		etiqueta=document.getElementById("City");
		form.txtCity.value=trim(form.txtCity.value);
		if(form.txtCity.value.length<1)
		{
			mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Citá\"\n";
			etiqueta.innerHTML="* Citt&aacute;:";
			etiqueta.className="errorform";
			if (firstErrorControl == null)
			{ 
				firstErrorControl=form.txtCity;
			}
	
		}
		else
		{ 
			etiqueta.innerHTML="Citt&aacute;:";
			etiqueta.className="textoizquierda";
		}
		
		etiqueta=document.getElementById("Zip");
		form.txtZip.value=trim(form.txtZip.value);
		if(form.txtZip.value.length<1)
		{
			mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Codice Postale\"\n";
			etiqueta.innerHTML="* Zip CAP:";
			etiqueta.className="errorform";
			if (firstErrorControl == null)
			{ 
				firstErrorControl=form.txtZip;
			}
	
		}
		else
		{ 
			etiqueta.innerHTML="Zip CAP:";
			etiqueta.className="textoizquierda";
		}
		
		etiqueta=document.getElementById("State");
		form.txtState.value=trim(form.txtState.value);
		if(form.txtState.value.length<1)
		{
			mensaje=mensaje+"Se vuoi ricevere il catologo per posta per favore scrivi il tuo \"Regione\"\n";
			etiqueta.innerHTML="* Stato:";
			etiqueta.className="errorform";
			if (firstErrorControl == null)
			{ 
				firstErrorControl=form.txtState;
			}
	
		}
		else
		{ 
			etiqueta.innerHTML="Stato:";
			etiqueta.className="textoizquierda";
		}
	}
	
	etiqueta=document.getElementById("Comments");
	form.txtComments.value=trim(form.txtComments.value);
	if(form.txtComments.value.length>200)
	{
		
		mensaje=mensaje+"Le vostre \"osservazioni\" non possono essere più di 200 caratteri lungamente\n";
		etiqueta.innerHTML="* Hai altre domande o hai bisogno di ulteriori informazioni?";
		etiqueta.className="errorform";
		if (firstErrorControl == null)
		{ 
			firstErrorControl=form.txtComments;
		}

	}
	else
	{ 
		etiqueta.innerHTML="Hai altre domande o hai bisogno di ulteriori informazioni?";
		etiqueta.className="textoizquierda";
	}
	
	if (mensaje=="")
	{
		return true;
	}
	else
	{
		alert(mensaje);
		if(firstErrorControl.name != "selCountry" && firstErrorControl.name != "selBirth")
		{ 
			firstErrorControl.select();
		}
		firstErrorControl.focus();
		return false;
	}

}