function validate_form()
{
	if (document.userform.clients_siret.value == "")
	{
		alert('Numéro de société indispensable (SIRET)!');
		document.userform.clients_siret.focus();
		return false;
	}
	if (document.userform.clients_ape.value == "")
	{
		alert('Code activité  indispensable (APE)!');
		document.userform.clients_ape.focus();
		return false;
	}
	if (document.userform.clients_tvanum.value == "")
	{
		alert('Numéro de TVA CEE  indispensable');
		document.userform.clients_tvanum.focus();
		return false;
	}
	// Type entreprise
	if (document.userform.clients_statutsociete.value == "")
	{
		alert('Type d\'entreprise indispensable');
		document.userform.clients_statutsociete.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ère invalide 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 ('otre 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  Company
	if (document.userform.clients_societe.value == "")
	{
		alert('Société indispensable!');
		document.userform.clients_societe.focus();
		return false;
	}
	// validate  Prenom
	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 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;
}

