function validate_form()
{



	if (document.userform.clients_prenom.value == "")
	{
		alert('Prénom indispensable !');
		document.userform.clients_prenom.focus();
		return false;
	}
	// validate  name
	if (document.userform.clients_nom.value == "")
	{
		alert('Nom  indispensable !');
		document.userform.clients_nom.focus();
		return false;
	}
	// validate email
	if (document.userform.clients_email.value == "")
	{
		alert('Email  indispensable !');
		document.userform.clients_email.focus()
		return false;
	}
	else {
		var invalidchars = " /:,;éà&$<>ù"
		for (i=0;i<invalidchars.length;i++) {
			if (document.userform.clients_email.value.indexOf(invalidchars.charAt(i),0) > -1) {
				alert("Caractères invalides dans votre email");
				document.userform.clients_email.focus();
				return false;
			}
		}
		var atpos = document.userform.clients_email.value.indexOf("@",1)
		if (atpos == -1) {
			alert("Email invalide !");
			document.userform.clients_email.focus();
			return false;
		}
		var perpos = document.userform.clients_email.value.indexOf(".",atpos)
		if (perpos == -1) {
			alert("Email invalide !");
			document.userform.clients_email.focus();
			return false;
		}
		if (perpos+3 > document.userform.clients_email.value.length) {
			alert("Email invalide !");
			document.userform.clients_email.focus();
			return false;
		}
	}


	// validate password
	if (document.userform.clients_pass.value == "")
	{
		alert('Mot de passe indispensable !');
		document.userform.clients_pass.focus()
		return false;
	}

	// validate confirm password
	if (document.userform.clients_passverif.value == "")
	{
		alert('Vérification Mot de passe indispensable !');
		document.userform.clients_passverif.focus()
		return false;
	}

	// validate password & confirm password
	if (document.userform.clients_pass.value != document.userform.clients_passverif.value)
	{
		alert('Le mot de passe est invalide');
		document.userform.clients_pass.value = ""
		document.userform.clients_passverif.value = ""
		document.userform.clients_pass.focus()
		return false;
	}

	var s = document.userform.clients_pass.value;
  	if (s.length < 6 || s.length > 30)
	{
	   alert ('Votre mot de passe doit contenir entre 6 et 30 caractères');
	   document.userform.clients_pass.focus();
	   return false;
	}

	// validate password, only alphanumeric characters allowed
	if (/\W/.test(document.userform.clients_pass.value))
	{
	   	alert ('Votre mot de passe doit contenir au moin une lettre (a-Z) et un chiffre (0-9).');
		document.userform.clients_pass.value = ""
		document.userform.clients_passverif.value = ""
		document.userform.clients_pass.focus()
		return false;
	}

	// validate password, at least 1 letter
	if (!/[a-zA-Z]/.test(document.userform.clients_pass.value))
	{
	   alert ('Votre mot de passe doit contenir au moins une lettre (a-Z).');
	   document.userform.clients_pass.focus();
	   return false;
	}

	//validate password, at least 1 number
	if (!/\d/.test(document.userform.clients_pass.value))
	{
	   alert ('Votre mot de passe doit contenir au moins un chiffre (0-9).');
	   document.userform.clients_pass.focus();
	   return false;
	}

	// validate password criteria (6 < length 30, at least 1 letter, at least 1 number)
	// cannot be the same as the email address
	var email_ucase = document.userform.clients_email.value;
	email_ucase = email_ucase.toUpperCase();

	var password_ucase = document.userform.clients_pass.value;
	password_ucase = password_ucase.toUpperCase();

  	if (email_ucase == password_ucase)
	{
	   alert ("Votre mot de passe doit être différent de votre email ");
	   document.userform.clients_pass.focus();
	   return false;
	}
	// validate VAT

	// validate address (street address)
	if (document.userform.clients_adresse1.value == "")
	{
		alert('Adresse indispensable !');
		document.userform.clients_adresse1.focus()
		return false;
	}

	// validate city
	if (document.userform.clients_ville.value == "")
	{
		alert('Ville  indispensable !');
		document.userform.clients_ville.focus()
		return false;
	}
	// validate zip
	if (document.userform.clients_cp.value == "")
	{
		alert('Code postal indispensable !');
		document.userform.clients_cp.focus()
		return false;
	}
	// validate Country
	if (document.userform.clients_paysid.value == "")
	{
		alert('Pays  indispensable !');
		document.userform.clients_paysid.focus()
		return false;
	}
	// validate Phone
	if (document.userform.clients_tel.value == "")
	{
		alert('Téléphone  indispensable !');
		document.userform.clients_tel.focus()
		return false;
	}
	// since we got to here, we past all validation routines, then continue
	return true;
}

