
////================================================ VALIDATE FORM REFINE SEARCH
//Author.....: Roberto Cândido da Silva
//Created at.: 2009-10-19
//Function name : validateFormSearch
//Param......: Object Form
var DateUtil = function()
{

	var today = new Date();

	var param = function(m,d,y){
		myDate = new Date();
		myDate.setFullYear(y, m, d);
		return myDate;
	}

	var isEqualOrBeforeToday = function(m,d,y){
		return (this.param(m,d,y)<=this.today) ? true : false;
	}

	var isEqualOrAfterToday = function(m,d,y){
		return (this.param(m,d,y)>=this.today) ? true : false;
	}

	var isBeforeToday = function(m,d,y){
		return (this.param(m,d,y)<this.today) ? true : false;
	}

	var isAfterToday = function(m,d,y){
		return (this.param(m,d,y)>this.today) ? true : false;
	}
}


	function SubmitSearch()
	{	
		if(validateFormSearch(document.formSearch))
		{
			document.formSearch.submit();
		}
	}
	function validateFormSearch(form)
	{
		if (form==undefined || form==null)
		{
			return false;
		}

		var txtDate = form.txtDate;
		var nights  = form.nights;
		var adults  = form.adults;
		var rooms 	= form.rooms;


		var formatDate = /^(([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/[1-2][0-9]\d{2})$/;

		if (txtDate!=undefined)
			if (txtDate.value.match(formatDate) && txtDate.value!='')
			{

				var datePart = txtDate.value.split("/");
				var m = datePart[0];
				var d = datePart[1];
				var y = datePart[2];
                                if (d.substr(0,1) == '0')
                                { 
                                //d = d.replace(/^0+/,'');
                                }
                                x = m-1;
                                z = d-1;
				var varDate  = new Date(y,x,d);
				if (m-1 == varDate.getMonth() && d==varDate.getDate() && y==varDate.getFullYear())
				{
					var tdyDate = new Date(y,x,z);
     			              	var auxDate =  y + '' + x + '' + d;
					var today = new Date();					
					w = today.getDate();
					if (w < 10)
					{	
						w ='0'+w.toString();
					}
					var auxToday = today.getFullYear() + '' + today.getMonth() + '' +w;// today.getDate();
					if (auxDate < auxToday)
					{
						alert("Date must be in the future.");
						txtDate.focus();
						return false;
					}
				}
				else
				{
					alert("Invalid date.");
					txtDate.focus();
					return false;
				}
			}
			else
			{
				alert("Invalid date format, please try mm/dd/yyyy.");
				txtDate.focus();
				return false;
			}

		if (nights!=undefined)
			if (nights.value.length<1 || nights.value<1 || !isInteger(nights.value))
			{
				alert("Please enter proper number in Number of Nights\n\n1. Number of Nights can't be blank\n2. Special characters are not allowed");
				nights.focus();
				return false;
			}

		if (adults!=undefined)
			if (adults.value.length<1 || adults.value<1 || !isInteger(adults.value))
			{
				alert("Please enter proper number in Number of People\n\n1. Number of People can't be blank\n2. Special characters are not allowed");
				adults.focus();
				return false;
			}

		if (rooms!=undefined)
			if (rooms.value.length<1 || rooms.value<1 || !isInteger(rooms.value))
			{
				alert("Please enter proper number in Number of Rooms\n\n1. Number of Rooms can't be blank\n2. Special characters are not allowed");
				rooms.focus();
				return false;
			}

		if (parseInt(rooms.value) > parseInt(adults.value))
		{
			alert("Number of rooms cannot be higher than number of people.\nPlease redo your search.");
			rooms.focus();
			return false;
		}

		return true;
	}

	// This script was obtained from Swanson Software - Integer Validation
	// Font: http://acmesoffware.com/acme/default.asp
	// Accessed at: 2009-10-19
	function isInteger (s)
	{
	   var i;

	   if (isEmpty(s))
	   if (isInteger.arguments.length == 1) return 0;
	   else return (isInteger.arguments[1] == true);

	   for (i = 0; i < s.length; i++)
	   {
	      var c = s.charAt(i);

	      if (!isDigit(c)) return false;
	   }

	   return true;
	}

	function isEmpty(s)
	{
	   return ((s == null) || (s.length == 0))
	}

	function isDigit (c)
	{
	   return ((c >= "0") && (c <= "9"))
	}

//================================================ VALIDATE FORM REFINE SEARCH
