satishgaudo.com

Understanding technology

function to check for valid date

function validDate(sDatePassed) {
 //if the date is in dd/mm/yyyy format then valid date returns 1else 0 
if (sDatePassed.length > 0) {
aDate = sDatePassed.split("/");
if (aDate.length != 3) return(0); 		if (aDate[1].length == 1) aDate[1]= "0"+aDate[1];
var iLeapyear = 0;
// check whether the year is leap year - aleap year is div by 4 ,100, 400
if ((aDate[2] % 4) == 0) {
if ((aDate[2] % 100) == 0) {
if ((aDate[2] % 400) == 0) {
iLeapyear = 1;
}
}
}
if (aDate[2].length != 4) {
return(0);
} else if (isNaN(aDate[2])) {
return(0);
} else if (aDate[2] < 0) {
return(0);
} else if ((aDate[1].length == 0) || (aDate[1].length > 2)) {
return(0);
} else if (isNaN(aDate[1])) {
return(0);
} else if ((aDate[1] <= 0) || (aDate[1] > 12)) {
return(0);
} else if ((aDate[0].length == 0) || (aDate[0].length > 2)) {
return(0);
} else if (isNaN(aDate[0])) {
return(0);
} else if (aDate[0] <= 0) {
return(0);
} else if ((iLeapyear == 1) && (aDate[1] == 02) && (aDate[0] > 29)) {
return(0);
} else if ((iLeapyear == 0) && (aDate[1] == 02) && (aDate[0] > 28)) {
return(0);
} else if (((aDate[1] == '01') || (aDate[1] == '03') || (aDate[1] == '05') || (aDate[1] == '07') || (aDate[1] == '08') ||(aDate[1] == '10') || (aDate[1] == '12')) && (aDate[0] > '31')) {
return(0);
} else if (((aDate[1] == '04') || (aDate[1] == '06') || (aDate[1] == '09') || (aDate[1] == '11')) && (aDate[0] >'30')) { return(0); } return 1; } else {
 return(1);
}
}// EOF validDate
Bookmark and Share
Categories: Javascript