
/***********************************************
* Required field(s) validation v1.10- By NavSurf
* Visit Nav Surf at http://navsurf.com
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i

function checkmail(e){
	var returnval=emailfilter.test(e.value);
	if (returnval==false){
		alert("Please enter a valid email address.");
		e.select();
	}
	return returnval;
}

function checkdisabler(id){
	if(document.getElementById(id + "_Year_ID").disabled){
		document.getElementById(id + "_Year_ID").removeAttribute("disabled");
		document.getElementById(id + "_Day_ID").removeAttribute("disabled");
		document.getElementById(id + "_Month_ID").removeAttribute("disabled");
	}else{
		document.getElementById(id + "_Year_ID").disabled = "disabled";
		document.getElementById(id + "_Day_ID").disabled = "disabled";
		document.getElementById(id + "_Month_ID").disabled = "disabled";
	}
}

function formCheck(formobj){

	if(document.getElementById("arrivalcheck").checked == 1)
		document.getElementById("00N20000000kdDA").value = document.getElementsByName("arrivaldate")[0].value;
	if(document.getElementById("departurecheck").checked == 1)
		document.getElementById("00N20000000kdDO").value = document.getElementsByName("departuredate")[0].value;

	var fieldRequired = Array("first_name", "last_name", "email", "email2", "00N20000000kdVj");
	// Enter field description to appear in the dialog box
	var fieldDescription = Array("First Name", "Surname", "Email", "Retype email", "People in party");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		if(formobj.elements["email"].value != formobj.elements["email2"].value){
			alert("\n Email fields do not match.\n");
			return false;
		}
		if((formobj.elements["00N20000000kdDA"].value == null || formobj.elements["00N20000000kdDA"].value == "") 
				&& (formobj.elements["00N20000000kdDO"].value == null || formobj.elements["00N20000000kdDO"].value == "")){
			alert("\n You must fill at least one date field.\n");
			return false;
		}

		var datefail = false;
		var hoyy= new Date();
		hoy = new Date(hoyy.getFullYear(), hoyy.getMonth(), hoyy.getDate(),0,0,0,0);
		var fecha_limite = new Date(hoyy.getFullYear(), hoyy.getMonth(), hoyy.getDate(),0,0,0,0);
		fecha_limite.setTime(fecha_limite.getTime()+548*24*60*60*1000);
		if(formobj.elements["00N20000000kdDA"].value != null || formobj.elements["00N20000000kdDA"].value != ""){
			var fecha = formobj.elements["00N20000000kdDA"].value.split("/");
			var date = new Date(fecha[2], fecha[1], fecha[0],0,0,0,0);
			if(date < hoy || date > fecha_limite)
				datefail=true;
		}
		if(formobj.elements["00N20000000kdDO"].value != null || formobj.elements["00N20000000kdDO"].value != ""){
			var fecha = formobj.elements["00N20000000kdDO"].value.split("/");
			var date = new Date(fecha[2], fecha[1], fecha[0],0,0,0,0);
			if(date < hoy || date > fecha_limite)
				datefail=true;
		}

		if(datefail){
			alert("\n Dates must be between " + hoy.toDateString() + " and " + fecha_limite.toDateString() + ".\n");
			return false;
		}
		return checkmail(formobj.elements["email"]);
		//return true
	}else{
		alert(alertMsg);
		return false;
	}
}

function formCheck2(formobj){

	if(document.getElementById("arrivalcheck").checked == 1)
		document.getElementById("00N20000000kdDA").value = document.getElementsByName("arrivaldate")[0].value;
	if(document.getElementById("departurecheck").checked == 1)
		document.getElementById("00N20000000kdDO").value = document.getElementsByName("departuredate")[0].value;

	var fieldRequired = Array("email", "email2", "00N20000000kdVj");
	// Enter field description to appear in the dialog box
	var fieldDescription = Array("Email", "Retype email", "People in party");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		if(formobj.elements["email"].value != formobj.elements["email2"].value){
			alert("\n Email fields do not match.\n");
			return false;
		}
		if((formobj.elements["00N20000000kdDA"].value == null || formobj.elements["00N20000000kdDA"].value == "") 
				&& (formobj.elements["00N20000000kdDO"].value == null || formobj.elements["00N20000000kdDO"].value == "")){
			alert("\n You must fill at least one date field.\n");
			return false;
		}
		
		var datefail = false;
		var hoyy= new Date();
		hoy = new Date(hoyy.getFullYear(), hoyy.getMonth(), hoyy.getDate(),0,0,0,0);
		var fecha_limite = new Date(hoyy.getFullYear(), hoyy.getMonth(), hoyy.getDate(),0,0,0,0);
		fecha_limite.setTime(fecha_limite.getTime()+548*24*60*60*1000);
		if(formobj.elements["00N20000000kdDA"].value != null || formobj.elements["00N20000000kdDA"].value != ""){
			var fecha = formobj.elements["00N20000000kdDA"].value.split("/");
			var date = new Date(fecha[2], fecha[1], fecha[0],0,0,0,0);
			if(date < hoy || date > fecha_limite)
				datefail=true;
		}
		if(formobj.elements["00N20000000kdDO"].value != null || formobj.elements["00N20000000kdDO"].value != ""){
			var fecha = formobj.elements["00N20000000kdDO"].value.split("/");
			var date = new Date(fecha[2], fecha[1], fecha[0],0,0,0,0);
			if(date < hoy || date > fecha_limite)
				datefail=true;
		}

		if(datefail){
			alert("\n Dates must be between " + hoy.toDateString() + " and " + fecha_limite.toDateString() + ".\n");
			return false;
		}
		return checkmail(formobj.elements["email"]);
		//return true;
	}else{
		alert(alertMsg);
		return false;
	}
}


