﻿// JScript File

function chkDate(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}|\d{4})$/;

    var matchArray = dateStr.match(datePat); 
    if (matchArray == null) 
    {
        return false;
    }
    month = matchArray[3];
    day = matchArray[1];
    year = matchArray[4];
    if (month < 1 || month > 12)
    {
        return false;
    }
    if (day < 1 || day > 31)
    {
        return false;
    }
    if ((month==4 || month==6 || month==9 || month==11) && day==31) 
    {
        return false
    }
    if (month == 2) 
    { 
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day>29 || (day==29 && !isleap)) 
        {
            return false;
        }    
    }
    return true;    
}
function LessCurrentDate(dateStr)
{
    
    var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;

    var matchArray = dateStr.match(datePat); 
    if (matchArray == null) 
    {
        return false;
    }
    month = matchArray[3];
    day = matchArray[1];
    year = matchArray[4];
    if (month < 1 || month > 12)
    {
        return false;
    }
    if (day < 1 || day > 31)
    {
        return false;
    }
    if ((month==4 || month==6 || month==9 || month==11) && day==31) 
    {
        return false
    }
    if (month == 2) 
    { 
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day>29 || (day==29 && !isleap)) 
        {
            return false;
        }    
    }
    var todayDate = new Date();
    todayDate.setDate(todayDate.getDate()-1);
    var eventDate=new Date();
    eventDate.setFullYear(year,month-1,day);
 
    if(todayDate < eventDate)
    {
        return false;
    }
    
    return true;   
}
function GreatCurrentDate(dateStr)
{
    
    var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;

    var matchArray = dateStr.match(datePat); 
    if (matchArray == null) 
    {
        return false;
    }
    month = matchArray[3];
    day = matchArray[1];
    year = matchArray[4];
    if (month < 1 || month > 12)
    {
        return false;
    }
    if (day < 1 || day > 31)
    {
        return false;
    }
    if ((month==4 || month==6 || month==9 || month==11) && day==31) 
    {
        return false
    }
    if (month == 2) 
    { 
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day>29 || (day==29 && !isleap)) 
        {
            return false;
        }    
    }
    var todayDate = new Date();
    todayDate.setDate(todayDate.getDate()+1);
    var eventDate=new Date();
    eventDate.setFullYear(year,month-1,day);
    
    if(todayDate > eventDate)
    {
        return false;
    }
    
    return true;   
}

function compareDate(from,to)
{
    var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;

    var matchArray1 = from.match(datePat); 
    if (matchArray1 == null) 
    {
        return false;
    }
    month1 = matchArray1[3];
    day1 = matchArray1[1];
    year1 = matchArray1[4];
    
    var matchArray2 = to.match(datePat); 
    if (matchArray2 == null) 
    {
        return false;
    }
    month2 = matchArray2[3];
    day2 = matchArray2[1];
    year2 = matchArray2[4];
    
    var fromDate=new Date();
    fromDate.setFullYear(year1,month1-1,day1);
    
    var ToDate=new Date();
    ToDate.setFullYear(year2,month2-1,day2);
    
    if(fromDate >ToDate)
    {
        return false;
    }
    return true;
}

