﻿// JScript File
function add2Days(theDate) {
    //var d = new Date(theDate);
    //d.setFullYear("2005");
    //d.setDate()+3;
    //d.setDate(d.getDate() + 3);
    //return d

    var mydate=new Date(theDate)
    mydate.setDate(mydate.getDate()+ 2)

    var year=mydate.getYear()

    if (year < 1000)
        year+=1900

    var month=mydate.getMonth()
    var daym=mydate.getDate()

    if (daym<10)
        daym="0"+daym

    var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")

    return daym+" "+montharray[month]+" "+year
    }
    
//added by edward - 05/-8/2007 to validate the date
function isValidDate(d) {
	var strDatestyle = "EU";  //European date style
	var strDate;
	var strDateArray;
	var strDay;
	var strMonth;
	var strYear;
	var intDay;
	var intMonth;
	var intYear;
	var booFound = false;
	var strSeparatorArray = new Array(" ");
	var intElementNr;
	var err = 0;
	var strMonthArray = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
	strDate = d;
	if (strDate.length < 1) {
		return false;
	}
	if (strDate.toLowerCase()=="today" || strDate.toLowerCase()=="now"){return true;}

	for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
		if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
			strDateArray = strDate.split(strSeparatorArray[intElementNr]);
			if (strDateArray.length != 3) 
			{
				err = 1;
				return false;
			}
			else 
			{
				strDay = strDateArray[0];
				strMonth = strDateArray[1];
				strYear = strDateArray[2];
			}
			booFound = true;
		}
	}

	if (booFound == false) {
	    return false;	    
		if (strDate.length>9) {
			strDay = strDate.substr(0, 2);
			strMonth = strDate.substr(2, 2);
			strYear = strDate.substr(4);
		}
		else
			return false;
	}
	
	// verify year 4 digits
	if (strYear.length != 4) {return false;}
	if (isNaN(strYear)){return false;}
	// US style (swap month and day)
	if (strDatestyle == "US") {
		strTemp = strDay;
		strDay = strMonth;
		strMonth = strTemp;
	}

	// verify 1 or 2 digit integer day
	if (strDay.length<1 || strDay.length>2) {return false;}
	if (isNaN(strDay)){return false;}
	
	//verify month must in MMM format
	var bolValidMonth = false;
	if (strMonth.length!=3)
	  return false;
    for (i = 0; i<12; i++){
	  if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
	    bolValidMonth=true;
	    break;
	  }
	}
	if (bolValidMonth == false)
	  return false;
	
	
	// month may be digits of characters, hence following check
	intMonth = parseInt(strMonth, 10);
	if (isNaN(intMonth)) {
		for (i = 0;i<12;i++) {
			if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
				intMonth = i+1;
				strMonth = strMonthArray[i];
				i = 12;
			}
		}
		if (isNaN(intMonth)) {
			err = 3;
			return false;
		}
	}

	intDay=parseInt(strDay,10);
	intYear = parseInt(strYear, 10);
	
	if (intMonth>12 || intMonth<1) {
		err = 5;
		return false;
	}
	
	// day in month check
	if (intDay < 1 || intDay > 31){return false;}
		
	if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intDay > 30)) {
		return false;
	}
	
	if (intMonth == 2) {
		if (LeapYear(intYear)) {
			if (intDay > 29) {return false;}
		}
		else 
		{
			if (intDay > 28) {return false;}
		}
	}
	return true;
}

function LeapYear(datea)
{
 datea = parseInt(datea);

 if(datea%4 == 0)
 {
  if(datea%100 != 0)
  {
   return true;
  }
  else
  {
   if(datea%400 == 0)
    return true;
   else
    return false;
  }
 }
return false;
}

function isValidDate2(theDate) {
  var splitDate;
  splitDate = theDate.split(" ");
  if (splitDate.length!= 3)
    return false;
  var myDayStr = splitDate[0];
  var myMonthStr = splitDate[1];
  var myYearStr = splitDate[2];
  if (myMonthStr.length!=3){
    alert('invalid month');
    return false;
  } 
  else
  {
    myMonthStr = myMonthStr.toLowerCase();
    if (myMonthStr!='jan' && myMonthStr != 'feb' && myMonthStr != 'mar' && myMonthStr != 'apr' && myMonthStr != 'may' && myMonthStr != 'jun' && myMonthStr != 'jul' && myMonthStr != 'aug' && myMonthStr != 'sep' && myMonthStr != 'oct' && myMonthStr != 'nov' && myMonthStr != 'dec'){
    alert(myMonthStr + ' is not valid month');
    return false;
    }
  }
  
  var myDay;
  myDay = parseInt(myDayStr,10);
  if (isNaN(myday))
  var monthArray=new Array("jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec")
  var myMonth=0;
  for (var i=0, len=monthArray.length; i<len; i++){
    if (monthArray[i] == myMonthStr){
      myMonth = i + 1;
      break;
    }
  }
  
  var myDate = new Date();
  alert('mymonth:' + myMonth + ' myday:' + myDay);
  myDate.setFullYear(2007,myMonth,myDay);
  alert(myDate.getMonth());
  alert('mymonth:' + myMonth);
  return false;
  if (myDate.getMonth() !=  myMonth){
    alert('Not a valid date!');
    return false;
  }
  else
    alert('date ok!');
  return false;
}



