var v_couleur_alert = "#ff0000";
var v_couleur_normale = "#000000";

var t_compagnie = new Array("nom","nouveau","msg_erreur");
var t_user		= new Array("nom","prenom","date_naissance","adresse","postal","ville","pays","tel","mobile","password","password_confir","email","email_confir");
var t_coord		= new Array("nom","prenom","date_naissance","adresse","code_postal","ville","pays","tel","mobile","password","password_confir","email","email_confir");

function f_verif_compagnie(nom_formulaire) {
	t_errors = new Array();
	for(var i = 0; i < t_compagnie.length; i++) {
		document.getElementById('txt_'+t_compagnie[i]).style.color = v_couleur_normale;
	}

		document.getElementById('txt_msg_erreur').innerHTML ="";
		document.getElementById('txt_msg_erreur').style.color = v_couleur_alert;
		document.getElementById('txt_msg_erreur').style.paddingLeft = '17px';
		document.getElementById('txt_msg_erreur').style.paddingBottom = '30px';

	if(nom_formulaire == 'ajout_compagnie'){
		if(document.getElementById('compagnie_name_id').value.length < 2) {
			t_errors.push("Nom de la compagnie\n");
			document.getElementById('txt_nom').style.color = v_couleur_alert;
		}
	}else{
		if(document.getElementById('upload_img_id').value.length < 2) {
			t_errors.push("Nouveau logo\n: Veillez insérer un chemin correct en cliquant sur \"Parcourir\". Choisir une image au format .jpg ou .gif puis cliquer sur le bouton \"Upload\" pour valider");
			document.getElementById('txt_nouveau').style.color = v_couleur_alert;
		}else{
			var v_longeur_mot = document.getElementById('upload_img_id').value.length;
			var v_extension = document.getElementById('upload_img_id').value.substring(v_longeur_mot-4,v_longeur_mot);
			if((v_extension.search(/.jpg/) == -1) &&( v_extension.search(/.gif/) == -1)){
				t_errors.push("Nouveau logo : Format non supporté, veillez choisir une image au format .jpg ou .gif seulement\n");
				document.getElementById('txt_nouveau').style.color = v_couleur_alert;
			}
		}
				
	}
	
	// si il y a des erreurs, afficher et bloquer
	if(t_errors.length == 0) {
		document.getElementById('txt_msg_erreur').style.paddingBottom = '0px';
		return true;
	} else {
		
		var message = t_errors.join("");
		if(t_errors.length == 1) 
			document.getElementById('txt_msg_erreur').innerHTML = "Le champ suivant est incorrect:<br>" + message;
		else
			document.getElementById('txt_msg_erreur').innerHTML = "Les champs suivants sont incorrects:<br>" + message;
		//alert(message);
		return false;
	}
}

function f_verif_article_upload() {
	t_errors = new Array();

	document.getElementById('txt_msg_erreur').innerHTML ="";
	document.getElementById('txt_msg_erreur').style.color = v_couleur_alert;
	document.getElementById('txt_msg_erreur').style.paddingLeft = '17px';
	document.getElementById('txt_msg_erreur').style.paddingBottom = '30px';

	if(document.getElementById('upload_img_id').value.length < 2) {
		t_errors.push("Veillez insérer un chemin correct en cliquant sur \"Parcourir\". Choisir une image au format .jpg ou .gif puis cliquer sur le bouton \"Upload\" pour valider\n");
	}else{
		var v_longeur_mot = document.getElementById('upload_img_id').value.length;
		var v_extension = document.getElementById('upload_img_id').value.substring(v_longeur_mot-4,v_longeur_mot);
		if((v_extension.search(/.jpg/) == -1) &&( v_extension.search(/.gif/) == -1)){
			t_errors.push("Format non supporté, veillez choisir une image au format .jpg ou .gif seulement\n");
		}
	}
				
	// si erreur, on affiche un message d'erreur
	if(t_errors.length == 0) {
		document.getElementById('txt_msg_erreur').style.paddingBottom = '0px';
		return true;
	}else{
		var message = t_errors.join("");
		if(t_errors.length == 1) 
			document.getElementById('txt_msg_erreur').innerHTML = message;
		return false;
	}
}

function f_verif_form_user() {
	//table de listing d'erreur : initialisation
	t_errors = new Array();
	for(var i = 0; i < t_user.length; i++) {
		document.getElementById('txt_'+t_user[i]).style.color = v_couleur_normale;
	}
	document.getElementById('txt_msg_erreur').innerHTML ="";
	document.getElementById('txt_msg_erreur').style.color = v_couleur_alert;
	document.getElementById('txt_msg_erreur').style.paddingLeft = '17px';
	document.getElementById('txt_msg_erreur').style.paddingBottom = '30px';

	//expression reguliere numerique
	var expres_decimal = /\D/;
	// expression avec tt sauf caractere avec accent
	var expres_password = /^[\sA-Za-z0-9-_]+$/;///^[\séèêëàâäçîïôöùûüÉÈÊËÀÂÄÎÏÔÖÙÛÜ]+$/;
	//expression reguliere alpha
	var expres_alpha=/^[\sA-Za-z]+$/;

	//alert(document.getElementById('user_nom').value.search(expres_alpha));
	//t_errors.push("Le champ Password n'est pas correcte: <6 caracteres ou contient des caracteres speciaux!");
	
	// Mot de pass: hors caracteres speciaux
	//alert(document.getElementById('user_password').value.search(expres_password));
	if((document.getElementById('user_password').value.length <6) || (document.getElementById('user_password').value.search(expres_password) !=0 ) || (document.getElementById('user_password').value != document.getElementById('user_password_confir').value)){
		t_errors.push("Le champ Mot de passe n'est pas correcte: <6 caracteres ou contient des caracteres speciaux!");
		document.getElementById('txt_password').style.color = v_couleur_alert;
		document.getElementById('txt_password_confir').style.color = v_couleur_alert;
	}
	
	// Nom utilisateur
	if((document.getElementById('user_nom').value.length <2) || (document.getElementById('user_nom').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Nom n'est pas correcte!, 2 caracteres minimum");
		document.getElementById('txt_nom').style.color = v_couleur_alert;
	}
	// Prenom 
	if((document.getElementById('user_prenom').value.length <2) || (document.getElementById('user_prenom').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Prenom n'est pas correcte!, 2 caracteres minimum");
		document.getElementById('txt_prenom').style.color = v_couleur_alert;
	}
	// date de naissance
	if((document.getElementById('user_d_naissance_jour').value.length !=2) || (document.getElementById('user_d_naissance_jour').value > 31) || (document.getElementById('user_d_naissance_jour').value.search(expres_decimal) != -1) 	||
		(document.getElementById('user_d_naissance_mois').value.length !=2) || (document.getElementById('user_d_naissance_mois').value > 12) || (document.getElementById('user_d_naissance_mois').value.search(expres_decimal) != -1) 	||
		(document.getElementById('user_d_naissance_annee').value.length !=4) || (document.getElementById('user_d_naissance_annee').value.search(expres_decimal) != -1)){
		t_errors.push("Le champ date de naissance n'est pas correcte!, formatage de type JJ MM AAAA");
		document.getElementById('txt_date_naissance').style.color = v_couleur_alert;
	}
	// Adresse
	if(document.getElementById('user_adresse').value.length <10) {
		t_errors.push("Le champ Adresse n'est pas correcte!, 10 caracteres minimum");
		document.getElementById('txt_adresse').style.color = v_couleur_alert;
	}
	// Code Postal : essentiellement des chiffres
	if((document.getElementById('user_postal').value.length != 5) || (document.getElementById('user_postal').value.search(expres_decimal) != -1)){
		t_errors.push("Le champ Postal n'est pas correcte!, Code postal a 5 chiffres");
		document.getElementById('txt_postal').style.color = v_couleur_alert;
	}
	// Ville
	if((document.getElementById('user_ville').value.length <3) || (document.getElementById('user_ville').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Ville n'est pas correcte!, 3 caracteres minimum");
		document.getElementById('txt_ville').style.color = v_couleur_alert;
	}
	// Pays
	if((document.getElementById('user_pays').value.length <3) || (document.getElementById('user_pays').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Pays n'est pas correcte!, 3 caracteres minimum");
		document.getElementById('txt_pays').style.color = v_couleur_alert;
	}
	// Tel : essentiellement des chiffres
	if((document.getElementById('user_tel').value.length != 10) || (document.getElementById('user_tel').value.search(expres_decimal) != -1)){
		t_errors.push("Le champ Tel n'est pas correcte!, 10 chiffres");
		document.getElementById('txt_tel').style.color = v_couleur_alert;
	}
	// Tel mobile : essentiellement des chiffres
	if(document.getElementById('user_mobile').value.length != 0)
		if((document.getElementById('user_mobile').value.length != 10) || (document.getElementById('user_mobile').value.search(expres_decimal) != -1)){
			t_errors.push("Le champ Mobile n'est pas correcte!, 10 chiffres");
			document.getElementById('txt_mobile').style.color = v_couleur_alert;
		}
		
	// Mail : de type aaaa@bbb.com
	if( (position=document.getElementById('user_email').value.indexOf('@')) == -1 || document.getElementById('user_email').value.indexOf('.',position) == -1 ||
		(position=document.getElementById('user_email_confir').value.indexOf('@')) == -1 || document.getElementById('user_email_confir').value.indexOf('.',position) == -1 ||																														 		(document.getElementById('user_email').value != document.getElementById('user_email_confir').value) ){
		
			t_errors.push("Le champ Mail n'est pas correcte!, formatage de type XXXXX@YYYYY.ZZ");
			document.getElementById('txt_email').style.color = v_couleur_alert;
			document.getElementById('txt_email_confir').style.color = v_couleur_alert;
	}


	if(t_errors.length == 0){
		document.getElementById('txt_msg_erreur').style.paddingBottom = '0px';
		//alert('ok');
		return true;
	}else{
		//alert('pas ok');
		var v_message = t_errors.join("<br>");
		document.getElementById('txt_msg_erreur').innerHTML = "Les champs suivants sont incorrects:<br><br>" + v_message;
		//alert(message);
		return false;
	}
}

function f_verif_form_coord(val_passwd) {
	//table de listing d'erreur : initialisation
	t_errors = new Array();
	for(var i = 0; i < t_coord.length; i++) {
		//alert(i);
		if(val_passwd == '0' && i == 9){
			i=10;
			//alert('if : ' + i);
		}else{
			//alert('else : '+i);
			document.getElementById('txt_'+t_coord[i]).style.color = v_couleur_normale;
		}
	}
	document.getElementById('txt_msg_erreur').innerHTML ="";
	document.getElementById('txt_msg_erreur').style.color = v_couleur_alert;
	document.getElementById('txt_msg_erreur').style.paddingLeft = '17px';
	document.getElementById('txt_msg_erreur').style.paddingBottom = '30px';

	//expression reguliere numerique
	var expres_decimal = /\D/;
	// expression avec tt sauf caractere avec accent
	var expres_password = /^[\sA-Za-z0-9-_]+$/;///^[\séèêëàâäçîïôöùûüÉÈÊËÀÂÄÎÏÔÖÙÛÜ]+$/;
	//expression reguliere alpha
	var expres_alpha=/^[\sA-Za-z]+$/;

	//alert(document.getElementById('c_nom').value.search(expres_alpha));
	//t_errors.push("Le champ Password n'est pas correcte: <6 caracteres ou contient des caracteres speciaux!");
	
	// Mot de pass: hors caracteres speciaux
	//alert(document.getElementById('c_password').value.search(expres_password));
	if((val_passwd == '1') && ((document.getElementById('c_password').value.length <6) || (document.getElementById('c_password').value.search(expres_password) !=0 ) || (document.getElementById('c_password').value != document.getElementById('c_password_confir').value)) ){
		t_errors.push("Le champ Mot de passe n'est pas correcte: <6 caracteres ou contient des caracteres speciaux!");
		document.getElementById('txt_password').style.color = v_couleur_alert;
		document.getElementById('txt_password_confir').style.color = v_couleur_alert;
	}
	
	// Nom utilisateur
	if((document.getElementById('c_nom').value.length <2) || (document.getElementById('c_nom').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Nom n'est pas correcte!, 2 caracteres minimum");
		document.getElementById('txt_nom').style.color = v_couleur_alert;
	}
	// Prenom 
	if((document.getElementById('c_prenom').value.length <2) || (document.getElementById('c_prenom').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Prenom n'est pas correcte!, 2 caracteres minimum");
		document.getElementById('txt_prenom').style.color = v_couleur_alert;
	}
	// date de naissance
	if((document.getElementById('c_d_naissance_jour').value.length !=2) || (document.getElementById('c_d_naissance_jour').value > 31) || (document.getElementById('c_d_naissance_jour').value.search(expres_decimal) != -1) 	||
		(document.getElementById('c_d_naissance_mois').value.length !=2) || (document.getElementById('c_d_naissance_mois').value > 12) || (document.getElementById('c_d_naissance_mois').value.search(expres_decimal) != -1) 	||
		(document.getElementById('c_d_naissance_annee').value.length !=4) || (document.getElementById('c_d_naissance_annee').value.search(expres_decimal) != -1)){
		t_errors.push("Le champ date de naissance n'est pas correcte!, formatage de type JJ MM AAAA");
		document.getElementById('txt_date_naissance').style.color = v_couleur_alert;
	}
	// Adresse
	if(document.getElementById('c_adresse').value.length <10) {
		t_errors.push("Le champ Adresse n'est pas correcte!, 10 caracteres minimum");
		document.getElementById('txt_adresse').style.color = v_couleur_alert;
	}
	// Code Postal : essentiellement des chiffres
	if((document.getElementById('c_code_postal').value.length != 5) || (document.getElementById('c_code_postal').value.search(expres_decimal) != -1)){
		t_errors.push("Le champ Postal n'est pas correcte!, Code postal a 5 chiffres");
		document.getElementById('txt_code_postal').style.color = v_couleur_alert;
	}
	// Ville
	if((document.getElementById('c_ville').value.length <3) || (document.getElementById('c_ville').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Ville n'est pas correcte!, 3 caracteres minimum");
		document.getElementById('txt_ville').style.color = v_couleur_alert;
	}
	// Pays
	if((document.getElementById('c_pays').value.length <3) || (document.getElementById('c_pays').value.search(expres_alpha) !=0)) {
		t_errors.push("Le champ Pays n'est pas correcte!, 3 caracteres minimum");
		document.getElementById('txt_pays').style.color = v_couleur_alert;
	}
	// Tel : essentiellement des chiffres
	if((document.getElementById('c_tel').value.length != 10) || (document.getElementById('c_tel').value.search(expres_decimal) != -1)){
		t_errors.push("Le champ Tel n'est pas correcte!, 10 chiffres");
		document.getElementById('txt_tel').style.color = v_couleur_alert;
	}
	// Tel mobile : essentiellement des chiffres
	if(document.getElementById('c_mobile').value.length != 0)
		if((document.getElementById('c_mobile').value.length != 10) || (document.getElementById('c_mobile').value.search(expres_decimal) != -1)){
			t_errors.push("Le champ Mobile n'est pas correcte!, 10 chiffres");
			document.getElementById('txt_mobile').style.color = v_couleur_alert;
		}
		
	// Mail : de type aaaa@bbb.com
	if( (position=document.getElementById('c_email').value.indexOf('@')) == -1 || document.getElementById('c_email').value.indexOf('.',position) == -1 ||
		(position=document.getElementById('c_email_confir').value.indexOf('@')) == -1 || document.getElementById('c_email_confir').value.indexOf('.',position) == -1 ||																														 		(document.getElementById('c_email').value != document.getElementById('c_email_confir').value) ){
		
			t_errors.push("Le champ Mail n'est pas correcte!, formatage de type XXXXX@YYYYY.ZZ");
			document.getElementById('txt_email').style.color = v_couleur_alert;
			document.getElementById('txt_email_confir').style.color = v_couleur_alert;
	}


	if(t_errors.length == 0){
		document.getElementById('txt_msg_erreur').style.paddingBottom = '0px';
		return true;
	}else{
		//alert('pas ok');
		var v_message = t_errors.join("<br>");
		document.getElementById('txt_msg_erreur').innerHTML = "Les champs suivants sont incorrects:<br><br>" + v_message;
		//alert(message);
		return false;
	}
}