  function SearchByDate(inDate,outDate,HotelName,Locationid){
     if(MyisValidDate(inDate) ){
		if(MyisValidDate(outDate)){
			if(Datediff(inDate)==1){
                            if(DateDiff(inDate,outDate,'MM/DD/YY')<0)
                            {
                                    document.FrmDetailedListing.HdnOPropertyName.value=HotelName
                                    document.FrmDetailedListing.HdnOLocationId.value=Locationid
                                    document.FrmDetailedListing.HdnOAction.value='SearchByDate'
                                    document.FrmDetailedListing.DatRCheckInDate.value=inDate;
                                    document.FrmDetailedListing.DatRCheckOutDate.value=outDate;
                                    document.FrmDetailedListing.submit();
                            }
                            else
                            {
                                    alert('Checkout Date should be greater than check in date');
                            }
                }
                else {
                        alert('CheckIn Date should be greater than todays date');
                } 
		      
		}
		
	}
        }
        
function MyisValidDate(dateStr) {

// Checks for the following valid date formats:
// MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY

var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2})$/; // requires 4 digit year

var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null) {
alert(dateStr + " Date is not in a valid format.")
return false;
}
month = matchArray[1]; // parse date into variables
day = matchArray[3];
year = matchArray[2];
if (month < 1 || month > 12) { // check month range
alert("Month must be between 1 and 12.");
return false;
}
if (day < 1 || day > 31) {
alert("Day must be between 1 and 31.");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Month "+month+" doesn't have 31 days!")
return false;
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day>29 || (day==29 && !isleap)) {
alert("February " + year + " doesn't have " + day + " days!");
return false;
   }
}
return true;
}


function DateDiff(firstDate,secondDate,dateFormat){
// Send FirstDate and Seconddate in mm/dd/yyyy format
	if (dateFormat.toUpperCase()=="DD/MM/YYYY"){

		var d1=firstDate.split("/");	
		var date1Str=d1[1]+'/'+d1[0]+'/'+d1[2];
		var date1=new Date(date1Str);			
		var d2=secondDate.split("/");	
		var date2Str=d2[1]+'/'+d2[0]+'/'+d2[2];
		var date2=new Date(date2Str);			
	}
	else{

	var date1=new Date(firstDate);			
	var date2=new Date(secondDate);

	}
	var date1gmtstring=date1.toGMTString();
	var date2gmtstring=date2.toGMTString();
	var date1parse=Date.parse(date1gmtstring);
	var date2parse=Date.parse(date2gmtstring);

	var diff=(date1parse-date2parse);

	return diff;
}

function Datediff(D1)
		{
					var sysdate=new Date();
					var d1=sysdate.getDate();
					var m1=sysdate.getMonth()+1;
					var y1=sysdate.getYear();
					var SysDateStr=m1+'/'+d1+'/'+y1;
					var date1=new Date(SysDateStr);
					var input=D1;
					var d2=input.substring(0,input.indexOf("/"));
					var m2=input.substring(input.indexOf("/")+1,input.lastIndexOf("/"));
					var y2=input.substring(input.lastIndexOf("/")+1,input.length);
					if (y2.length<4)
						y2="20"+y2;
					var date2Str=d2+'/'+m2+'/'+y2;
					var date2=new Date(date2Str);
					var date1gmtstring=date1.toGMTString();
					var date2gmtstring=date2.toGMTString();
					var date1parse=Date.parse(date1gmtstring);
					var date2parse=Date.parse(date2gmtstring);
					var diff=(date2parse-date1parse);
					if (eval(diff)>0)
						{
						flag=1;
						return flag;
		 				}
		}
		
		
function searchCriteria(CheckInDate,CheckOutDate,HotelName,LocationID)
{
	if(CheckInDate!="" && CheckOutDate!="")
	{
		SearchByDate(CheckInDate,CheckOutDate,HotelName,LocationID);
	}
	else
	{
	    document.FrmDetailedListing.HdnOPropertyName.value=HotelName;
	    document.FrmDetailedListing.HdnOLocationId.value=LocationID;
	    
	    document.FrmDetailedListing.submit();
	}
}