function isDate(dateval)
{
  dtval=dateval.split("/")
  d=dtval[0]
  m=dtval[1]
  y=dtval[2]
 if (isNaN(d) || isNaN(m) || isNaN(y))
{
    return(false); 
}
else if(parseInt(y) > 2100 || parseInt(y) < 1900)
{
     return(false);
}
else if(parseInt(m) > 12)
{
     return(false);
} 
else if ((m=="02")|| (m=="2"))
{
   if(eval(y)%400==0 ||(eval(y)%100!=0 && eval(y)%4==0))
        max = 29;
     else
       max = 28;    
}
else if (m=="1" || m=="01" || m=="3" || m=="03" || m=="5" || m=="05" || m=="7" || m=="07" || m=="8" || m=="08" || m=="10" || m=="12")
        max = 31;
  else
       max=30;
  if(eval(d) > eval(max))
      return(false);
      return(true);
} 


	
function dategreaterck(date1,date2)
 {
	splitcheckout = date1.split("/");
	var str1=""
	if(splitcheckout[1] == 1)
	   str1 = "Jan";
	else if(splitcheckout[1] == 2)
	   str1 = "Feb";
	else if(splitcheckout[1] == 3)
	   str1 = "Mar";
	else if(splitcheckout[1] == 4)
	   str1 = "Apr";
	else if(splitcheckout[1] == 5)
	   str1 = "May";
	else if(splitcheckout[1] == 6)
	   str1 = "Jun";
	else if(splitcheckout[1] == 7)
	   str1 = "Jul";
	else if(splitcheckout[1] == 8)
	   str1 = "Aug";
	else if(splitcheckout[1] == 9)
	   str1 = "Sep";
	else if(splitcheckout[1] == 10)
	   str1 = "Oct";
	else if(splitcheckout[1] == 11)
	   str1 = "Nov";
	else if(splitcheckout[1] == 12)
	   str1 = "Dec";
    checkout= new Date(str1+" "+splitcheckout[0]+","+splitcheckout[2]);
    
	splitcheckin = date2.split("/");
	var str2=""
	if(splitcheckin[1] == 1)
	   str2 = "Jan";
	else if(splitcheckin[1] == 2)
	   str2 = "Feb";
	else if(splitcheckin[1] == 3)
	   str2 = "Mar";
	else if(splitcheckin[1] == 4)
	   str2 = "Apr";
	else if(splitcheckin[1] == 5)
	   str2 = "May";
	else if(splitcheckin[1] == 6)
	   str2 = "Jun";
	else if(splitcheckin[1] == 7)
	   str2 = "Jul";
	else if(splitcheckin[1] == 8)
	   str2 = "Aug";
	else if(splitcheckin[1] == 9)
	   str2 = "Sep";
	else if(splitcheckin[1] == 10)
	   str2 = "Oct";
	else if(splitcheckin[1] == 11)
	   str2 = "Nov";
	else if(splitcheckin[1] == 12)
	   str2 = "Dec";
    checkin= new Date(str2+" "+splitcheckin[0]+","+splitcheckin[2]);
		if(checkout < checkin){
			alert("Kindly select dates in a valid range.")
			return false;
			}
         else{
			return true;		 
			}
 }

function currentdateck(date2)
 {
	montharray = new Array("JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC");
	dtobj= new Date();
	splitsr=date2.split("/");
	var str = "";
	
	if(splitsr[1] == 1)
	   str = "Jan";
	else if(splitsr[1] == 2)
	   str = "Feb";
	else if(splitsr[1] == 3)
	   str = "Mar";
	else if(splitsr[1] == 4)
	   str = "Apr";
	else if(splitsr[1] == 5)
	   str = "May";
	else if(splitsr[1] == 6)
	   str = "Jun";
	else if(splitsr[1] == 7)
	   str = "Jul";
	else if(splitsr[1] == 8)
	   str = "Aug";
	else if(splitsr[1] == 9)
	   str = "Sep";
	else if(splitsr[1] == 10)
	   str = "Oct";
	else if(splitsr[1] == 11)
	   str = "Nov";
	else if(splitsr[1] == 12)
	   str = "Dec";

		dtobj1 = new Date(str+" "+splitsr[0]+","+splitsr[2]);
		//alert("dtobj--->"+dtobj);
		var currentDate = dtobj.getDate();
		var currentMonth = dtobj.getMonth()+1;
		var currentYear = dtobj.getYear();
		var dtobjCurrent =  new Date(montharray[eval(currentMonth) - 1] +" "+ currentDate +","+currentYear);
		//alert("dtobjCurrent==="+dtobjCurrent);
		//alert("dtobj1-->"+dtobj1);
		if(dtobj1 < dtobjCurrent)
			return false;
         else
			return true;		 	
	
}


function date7chk(date1,date2)
 {
	splitcheckout = date1.split("/");
	var str1=""
	if(splitcheckout[1] == 1)
	   str1 = "Jan";
	else if(splitcheckout[1] == 2)
	   str1 = "Feb";
	else if(splitcheckout[1] == 3)
	   str1 = "Mar";
	else if(splitcheckout[1] == 4)
	   str1 = "Apr";
	else if(splitcheckout[1] == 5)
	   str1 = "May";
	else if(splitcheckout[1] == 6)
	   str1 = "Jun";
	else if(splitcheckout[1] == 7)
	   str1 = "Jul";
	else if(splitcheckout[1] == 8)
	   str1 = "Aug";
	else if(splitcheckout[1] == 9)
	   str1 = "Sep";
	else if(splitcheckout[1] == 10)
	   str1 = "Oct";
	else if(splitcheckout[1] == 11)
	   str1 = "Nov";
	else if(splitcheckout[1] == 12)
	   str1 = "Dec";
    checkout= new Date(str1+" "+splitcheckout[0]+","+splitcheckout[2]);

	//alert(checkout);
	//var temp = splitcheckout[0]
	//var addtemp =eval(parseInt(temp)+7);

	//checkin7 = new Date(str1+" "+ addtemp +","+splitcheckout[2]);

//alert(addtemp);

	splitcheckin = date2.split("/");
	var str2=""
	if(splitcheckin[1] == 1)
	   str2 = "Jan";
	else if(splitcheckin[1] == 2)
	   str2 = "Feb";
	else if(splitcheckin[1] == 3)
	   str2 = "Mar";
	else if(splitcheckin[1] == 4)
	   str2 = "Apr";
	else if(splitcheckin[1] == 5)
	   str2 = "May";
	else if(splitcheckin[1] == 6)
	   str2 = "Jun";
	else if(splitcheckin[1] == 7)
	   str2 = "Jul";
	else if(splitcheckin[1] == 8)
	   str2 = "Aug";
	else if(splitcheckin[1] == 9)
	   str2 = "Sep";
	else if(splitcheckin[1] == 10)
	   str2 = "Oct";
	else if(splitcheckin[1] == 11)
	   str2 = "Nov";
	else if(splitcheckin[1] == 12)
	   str2 = "Dec";
    checkin= new Date(str2+" "+splitcheckin[0]+","+splitcheckin[2]);
/*
	//alert(checkin7);

		if(checkout <= checkin7)
//			return false;
return true;
			//alert("valid");
         else
//			return true;	
			//alert("invalid");
			return false;
		*/	
			var ONE_DAY = 1000 * 60 * 60 * 24

    // Convert both dates to milliseconds
    var date1_ms = checkout.getTime();
    var date2_ms = checkin.getTime();

    // Calculate the difference in milliseconds
    var difference_ms = Math.abs(date1_ms - date2_ms);
    
    // Convert back to days and return
    //return Math.round(difference_ms/ONE_DAY)
   var day7chk = Math.round(difference_ms/ONE_DAY);


if (day7chk <= 7){
return true;
}
else {
return false
}

//return day7chk;
 }

/*
function days_between(date1, date2) {


var sSplit1 = date1.split("/");
var sSplit2 = date2.split("/");
var datere1 = new Date(sSplit1[2]+","+sSplit1[1]+","+sSplit1[0]);
var datere2 = new Date(sSplit2[2]+","+sSplit2[1]+","+sSplit2[0]);

alert(datere1);
alert(datere2);
    // The number of milliseconds in one day
    var ONE_DAY = 1000 * 60 * 60 * 24

    // Convert both dates to milliseconds
    var date1_ms = datere1.getTime();
    var date2_ms = datere2.getTime();

    // Calculate the difference in milliseconds
    var difference_ms = Math.abs(date1_ms - date2_ms);
    
    // Convert back to days and return
    //return Math.round(difference_ms/ONE_DAY)
   var day7chk = Math.round(difference_ms/ONE_DAY);

if (day7chk <= 7){
return true;
}
else {
return false
}
}
*/
function days_between(date1, date2) {

/*
var sSplit1 = date1.split("/");
var sSplit2 = date2.split("/");
var datere1 = new Date(sSplit1[2]+","+sSplit1[1]+","+sSplit1[0]);
var datere2 = new Date(sSplit2[2]+","+sSplit2[1]+","+sSplit2[0]);
*/
//alert(datere1);
//alert(datere2);
    // The number of milliseconds in one day
    var ONE_DAY = 1000 * 60 * 60 * 24

    // Convert both dates to milliseconds
    var date1_ms = date1 //datere1.getTime();
    var date2_ms = date2 //datere2.getTime();

    // Calculate the difference in milliseconds
    var difference_ms = Math.abs(date1_ms - date2_ms);
    
    // Convert back to days and return
    //return Math.round(difference_ms/ONE_DAY)
   var day7chk = Math.round(difference_ms/ONE_DAY);

if (day7chk <= 180){
return true;
}
else {
return false
}
}



function dateCheckRange(iDate){
				isRange = new Boolean()
				var comDate = new Date()
				var comDatemili;
				
	splitcheckin = iDate.split("/");
	var str2=""
	if(splitcheckin[1] == 1)
	   str2 = "Jan";
	else if(splitcheckin[1] == 2)
	   str2 = "Feb";
	else if(splitcheckin[1] == 3)
	   str2 = "Mar";
	else if(splitcheckin[1] == 4)
	   str2 = "Apr";
	else if(splitcheckin[1] == 5)
	   str2 = "May";
	else if(splitcheckin[1] == 6)
	   str2 = "Jun";
	else if(splitcheckin[1] == 7)
	   str2 = "Jul";
	else if(splitcheckin[1] == 8)
	   str2 = "Aug";
	else if(splitcheckin[1] == 9)
	   str2 = "Sep";
	else if(splitcheckin[1] == 10)
	   str2 = "Oct";
	else if(splitcheckin[1] == 11)
	   str2 = "Nov";
	else if(splitcheckin[1] == 12)
	   str2 = "Dec";
    inDate = new Date(str2+" "+splitcheckin[0]+","+splitcheckin[2]);

	comDatemili = comDate.getTime()
	inDate = inDate.getTime()

	var ONE_DAY = 1000 * 60 * 60 * 24
	
	if(inDate < comDatemili) {	
//********* date cannot be less than today, as u cant book in the past anymore.	
var difference_ms = Math.abs(comDatemili - inDate);

	if(difference_ms <= ONE_DAY){
	alert("For information and bookings related to travelling today, please contact Tranz Scenic direct on 0800 TRAINS");
	}
	else{
	alert("Kindly select a date greater than today.");
	}
	
	return false;
	
}
else{
	if (inDate > comDatemili){	
								return true;
							}
}

}
			
function chckAlertPop(date1,date2){
// This is the fucntion that passes the dates to the details function to check 
		var dateArray = new Array();
dateArray[0] = new Date("April 14,2003");
dateArray[1] = new Date("April 15,2003");
dateArray[2] = new Date("May 05,2003");
dateArray[3] = new Date("May 06,2003");
dateArray[4] = new Date("June 03,2003");
dateArray[5] = new Date("June 04,2003");
dateArray[6] = new Date("June 30,2003");
dateArray[7] = new Date("July 01,2003");

/*
14/04/2003
15/04/2003
05/05/2003
06/05/2003
03/06/2003
04/06/2003
30/06/2003
01/07/2003
 - 10 april */
 
 
for(i=0;i<dateArray.length;i++){
	//alert(date1);
	//alert(date2);
	//alert(dateArray[i]);
	var isVal = chckAlertPopDetails(date1,date2,dateArray[i])
	//alert(isVal);
	if (isVal == true) {
	//break;
	return true;
	break;
	}

//return chckAlertPopDetails(date1,date2,dateArray[i]);
}

			}
			
			
// This is to calculated the dates for AKL - mail dated 12May			
function chckAlertPopAkl(date1,date2){

var akldateArray = new Array();
akldateArray[0] = new Date("July 04,2003");
akldateArray[1] = new Date("July 05,2003");
akldateArray[2] = new Date("July 06,2003");

// - 12 May 
 
for(i=0;i<akldateArray.length;i++){
	var isaklVal = chckAlertPopDetails(date1,date2,akldateArray[i])
	if (isaklVal == true) {
	return true;
	break;
						}
								}

}
		
		
// This is to calculated the dates for AKL Part 2 - mail dated 12May			
function chckAlertPopAkl2(date1,date2){
// 11th to 14th July
var akldateArray2 = new Array();
akldateArray2[0] = new Date("July 11,2003");
akldateArray2[1] = new Date("July 12,2003");
akldateArray2[2] = new Date("July 13,2003");
akldateArray2[3] = new Date("July 14,2003");
// - 12 May 
 
for(i=0;i<akldateArray2.length;i++){
	var isaklVal2 = chckAlertPopDetails(date1,date2,akldateArray2[i])
	if (isaklVal2 == true) {
	return true;
	break;
						}
								}

}		
			
// This is the main function that performs the date check for each date			
function chckAlertPopDetails(date1,date2,passedDate)
			{
			
splitcheckout = date1.split("/");
	var str1=""
	if(splitcheckout[1] == 1)
	   str1 = "Jan";
	else if(splitcheckout[1] == 2)
	   str1 = "Feb";
	else if(splitcheckout[1] == 3)
	   str1 = "Mar";
	else if(splitcheckout[1] == 4)
	   str1 = "Apr";
	else if(splitcheckout[1] == 5)
	   str1 = "May";
	else if(splitcheckout[1] == 6)
	   str1 = "Jun";
	else if(splitcheckout[1] == 7)
	   str1 = "Jul";
	else if(splitcheckout[1] == 8)
	   str1 = "Aug";
	else if(splitcheckout[1] == 9)
	   str1 = "Sep";
	else if(splitcheckout[1] == 10)
	   str1 = "Oct";
	else if(splitcheckout[1] == 11)
	   str1 = "Nov";
	else if(splitcheckout[1] == 12)
	   str1 = "Dec";
    checkout= new Date(str1+" "+splitcheckout[0]+","+splitcheckout[2]);

	//alert(checkout);
	//var temp = splitcheckout[0]
	//var addtemp =eval(parseInt(temp)+7);

	//checkin7 = new Date(str1+" "+ addtemp +","+splitcheckout[2]);

//alert(addtemp);

	splitcheckin = date2.split("/");
	var str2=""
	if(splitcheckin[1] == 1)
	   str2 = "Jan";
	else if(splitcheckin[1] == 2)
	   str2 = "Feb";
	else if(splitcheckin[1] == 3)
	   str2 = "Mar";
	else if(splitcheckin[1] == 4)
	   str2 = "Apr";
	else if(splitcheckin[1] == 5)
	   str2 = "May";
	else if(splitcheckin[1] == 6)
	   str2 = "Jun";
	else if(splitcheckin[1] == 7)
	   str2 = "Jul";
	else if(splitcheckin[1] == 8)
	   str2 = "Aug";
	else if(splitcheckin[1] == 9)
	   str2 = "Sep";
	else if(splitcheckin[1] == 10)
	   str2 = "Oct";
	else if(splitcheckin[1] == 11)
	   str2 = "Nov";
	else if(splitcheckin[1] == 12)
	   str2 = "Dec";
    checkin= new Date(str2+" "+splitcheckin[0]+","+splitcheckin[2]);
/*
	//alert(checkin7);

		if(checkout <= checkin7)
//			return false;
return true;
			//alert("valid");
         else
//			return true;	
			//alert("invalid");
			return false;
		*/	
			var ONE_DAY = 1000 * 60 * 60 * 24

    // Convert both dates to milliseconds
    var date1_ms = checkout.getTime();
    var date2_ms = checkin.getTime();

    // Convert both dates to milliseconds
   // var date1_ms = date1.getTime() //datere1.getTime();
  //  var date2_ms = date2.getTime() //datere2.getTime();
	var date_al = passedDate//new Date("April 14, 2003") - this is the date parameter passed to it to compare the dates
 // 10 march 2003 date object
	var date_chk = date_al.getTime()
/*
alert(date1_ms);
alert(date2_ms);
alert(date_chk);
*/
if(date1 != "" && date2 == ""){

		if(Math.abs(date1_ms-date_chk)==0){
		return true;
		}
}
else if(date2 != "" && date1 == ""){

		if(Math.abs(date2_ms-date_chk)==0){
		return true;
		}
}

else if(date1 != "" && date2 != "") {
// check if both the dates are there..ie a range is selected.
//alert(date1_ms);
//alert(date2_ms);
//alert(date_chk);

		if(((date1_ms <= date_chk) && (date2_ms >= date_chk)) || ((date1_ms == date2_ms) &&  (date1_ms == date_chk))){
		//alert("done");
		return true;
		}
		
    
}
else{
		//alert("empty");
	return false;
	}
		
    // Calculate the difference in milliseconds
  //  var difference_ms = Math.abs(date1_ms - date2_ms);
    
    // Convert back to days and return
    //return Math.round(difference_ms/ONE_DAY)
   //var day7chk = Math.round(difference_ms/ONE_DAY);
			
			}
			
			
function retMMstring(MM){
var str2;

	if(MM == 1)
	   str2 = "Jan";
	else if(MM == 2)
	   str2 = "Feb";
	else if(MM == 3)
	   str2 = "Mar";
	else if(MM == 4)
	   str2 = "Apr";
	else if(MM == 5)
	   str2 = "May";
	else if(MM == 6)
	   str2 = "Jun";
	else if(MM == 7)
	   str2 = "Jul";
	else if(MM == 8)
	   str2 = "Aug";
	else if(MM == 9)
	   str2 = "Sep";
	else if(MM == 10)
	   str2 = "Oct";
	else if(MM == 11)
	   str2 = "Nov";
	else if(MM == 12)
	   str2 = "Dec";

return str2;
}