jQuery(document).ready(function() {
    jQuery("#myForm").bind('submit', function(){
        var bReturn = true;
        var sMessage = ""; // Informations CoordonnŽes
		var sMessage2 = "";
                
		var bNom = true;
		var bPrenom = true;
		var bEmail = true;
		var bTel = true;
		var bMessageText = true;
		var bDate = true;
		var bHeure = true;


		// Verif NOM
        jQuery("#p_Nom").css({borderColor: ''});
        if ( jQuery.trim(jQuery("#p_Nom").val()).length==0 || jQuery.trim($("#p_Nom").val()) == "Nom" ) {
            jQuery("#p_Nom").css({borderColor: '#FF6464'});
            bReturn = false;
            bNom = false;
            sMessage += "Nom, ";
        }
        
		// Verif PRENOM
        jQuery("#p_Prenom").css({borderColor: ''});
        if ( jQuery.trim(jQuery("#p_Prenom").val()).length==0 || jQuery.trim(jQuery("#p_Prenom").val()) == "Prenom"  ) {
            jQuery("#p_Prenom").css({borderColor: '#FF6464'});
            bReturn = false;
            bPrenom = false;
            sMessage += "Pr&eacute;nom, ";
        }
        
		// Verif EMAIL
        jQuery("#p_Email").css({borderColor: ''});
        if ( jQuery.trim(jQuery("#p_Email").val()).length==0  || jQuery.trim(jQuery("#p_Email").val()) == "Email" ) {
            jQuery("#p_Email").css({borderColor: '#FF6464'});
            sMessage += "Adresse email, ";
            bEmail = false;
            bReturn = false;
        } else {
			if(isValidEmailAddress(jQuery.trim(jQuery("#p_Email").val())) == false) {
				sMessage += " Adresse email <b>conforme</b>, ";
            	jQuery("#p_Email").css({borderColor: '#FF6464'});
			}
        }
        
		// Verif TEL
        jQuery("#p_Tel").css({borderColor: ''});
        if ( jQuery.trim(jQuery("#p_Tel").val()).length==0  || jQuery.trim(jQuery("#p_Tel").val()) == "Telephone"  ) {
            jQuery("#p_Tel").css({borderColor: '#FF6464'});
            sMessage += "Num&eacute;ro de t&eacute;l&eacute;phone, ";
            bTel = false;
            bReturn = false;
        } else {
			if(isValidNumberPhone(jQuery.trim(jQuery("#p_Tel").val())) == false) {
				sMessage += " T&eacute;l&eacute;phone <b>conforme, </b>, ";
            	jQuery("#p_Tel").css({borderColor: '#FF6464'});
			}
        }
        
        // Verif HEURE
        jQuery("#p_Heure").css({borderColor: ''});
        if ( jQuery.trim(jQuery("#p_Heure").val()).length==0 || jQuery.trim(jQuery("#p_Heure").val()) == "Heure" ) {
            jQuery("#p_Heure").css({borderColor: '#FF6464'});
            bReturn = false;
            bHeure = false;
            sMessage2 = ", Heure";
        }
        
        // Verif DATE
        jQuery("#p_Date").css({borderColor: ''});
        if ( jQuery.trim(jQuery("#p_Date").val()).length==0 || jQuery.trim(jQuery("#p_Date").val()) == "Date" ) {
            jQuery("#p_Date").css({borderColor: '#FF6464'});
            bReturn = false;
            bDate = false;
            sMessage2 = ", Date";
        }
               
		// Verif CONTENU
        jQuery("#p_Adresse").css({borderColor: ''});
        if ( jQuery.trim(jQuery("#p_Adresse").val()).length==0 || jQuery.trim(jQuery("#p_Adresse").val()) == "Votre demande" ) {
            jQuery("#p_Adresse").css({borderColor: '#FF6464'});
            bReturn = false;
            bNom = false;
            sMessage += "Message";
        }
		
		if(document.getElementById("p_Type").value != "rdv") {
			sMessage2 = '';
		}
		
		if(sMessage != '' || sMessage2 != '') {
			jQuery("div#sMessageForm").addClass("error");
			sMessageError = "<b>Attention, voici la liste des champs &agrave; compl&eacute;ter :</b> <br />";
		
			if(sMessage != '') {
				sMessageError += sMessage;
			}
			if(document.getElementById("p_Type").value == "rdv") {
				if(bHeure == false ) {
					sMessageError += ", Heure";
				}
				if(bDate == false ) {
					sMessageError += ", Date";
				}
			
			}
			
			jQuery("div#sMessageForm").html(sMessageError);
	
			document.getElementById('p_Valid').value = "0";
			return false;
		} else {
			document.getElementById('p_Valid').value = "1";
			return true;
		}
    });
});


function isValidEmailAddress(emailAddress) {
	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
}

function isValidNumber(champ) {
	var number = new RegExp(/^[-]?\d*\.?\d*$/);
	return number.test(champ);
}

function isValidNumberPhone(champ) {
	var number = new RegExp(/^[-]?\d*\.?\d*$/);
	while (champ.search(" ") != -1) {
		champ = champ.replace(" ", "");
	} 
	return number.test(champ);
}
