$(document).ready(function(){
	var isAlertCall = false;
	
	$("form#cforms2form").submit(function(){
		if (returnValidForm()) $("#trigger_link").trigger('click');
		return isAlertCall;
	});
	
	$("#trigger_link").fancybox({
		'showCloseButton':false,
		'hideOnOverlayClick':false,
		'hideOnContentClick':false,
		onStart: function(){
			$("input#phone_number").val($("input#cf2_field_4").val());
		},
		onClosed: function() {
			isAlertCall = true;
			$("form#cforms2form").submit();
		}
	});

	$("input#call_me_now").click(function(){
		$("input#call_back").val('1');
		$.fancybox.close();
	});
	
	$("input#call_me_later").click(function(){
		$("input#call_back").val('0');
		$.fancybox.close();
	});	

});
	
function returnValidForm(){
		var errorForm = false;
		var errorMsg = '';
		var field_array = new Array("","Civilité","Nom","Email","Téléphone","Ville");
		
		for (i=1; i<=5; i++){
		
			var itemValue = '';
			if (i == 1){
				itemValue = $('input:radio[name=cf2_field_1]:checked').val();
			}else{
				itemValue = $("#cf2_field_"+i).val();
			}
			
			if ((itemValue == '')||(itemValue == undefined)){
				errorMsg += "<li>Veuillez saisir votre "+field_array[i]+" </li>";
				errorForm = true;
			}else{
				if (i>1){
					if (itemValue == field_array){
						errorMsg += "<li>Veuillez saisir votre "+field_array[i]+" </li>";
						errorForm = true;
					}else{
						 if (i == 4){
							if (!isValidePhoneNumber(itemValue)){
								errorMsg += "<li>Téléphone : Veuillez saisir uniquement des chiffres ! </li>";
								errorForm = true;
							}						
						}else if(i == 3){
							if (!isValidEmailAddress(itemValue)){
								errorMsg += "<li>Adresse email erroné ! </li>";
								errorForm = true;
							}						
						}else{
							if ((itemValue == '')||(itemValue == undefined)){
								errorMsg += "<li>Required field "+field_array[i]+" </li>";
								errorForm = true;
							}
						}
					}
				}

			}
		}
		
		if (errorForm){
			$('div#usermessage2a').html('<ol>'+errorMsg+'</ol>');
			return false;
		}else{
			$('div#usermessage2a').html('');
			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 isValideZipNumber(zip){
	var pattern = new RegExp(/^\d{5}$/i);
	return pattern.test(zip);
}

function isValidePhoneNumber(phoneNumber){
	var pattern = new RegExp(/^\d{5,20}$/i);
	return pattern.test(phoneNumber);
}
