﻿// JScript File
   
function fnIsAlphaNumeric(source,argument)
{
	if(isAlphaNumeric(argument .Value))
		argument.IsValid=true;
	else
		argument.IsValid=false;
}	

function fnCheckEmail(source,argument)
{
	if(isEmailId(argument .Value))
		argument.IsValid=true;
	else
		argument.IsValid=false;
}
function fnIsAlphabet(source,argument)
{
	if(isAlaphabets(argument .Value))
		argument.IsValid=true;
	else
		argument.IsValid=false;
}
function fnIsPhone(source,argument)
{
	if(isPhone(argument .Value))
		argument.IsValid=true;
	else
		argument.IsValid=false;
}
function fnIsDate(source,argument)
{
    if(isDate(argument .Value))
		argument.IsValid=true;
	else
		argument.IsValid=false;
}

function fnIsPassportNo(source,argument)
{
    if(isPassportNo(argument.Value))
		argument.IsValid=true;
	else
		argument.IsValid=false;
}
function isPhone(strValue)
{
	var i,s;
    var flag=0;
    var condition;
    var len =strValue.length;
    for (i=0;i<len;i=i+1)
    {
        s =  strValue.charCodeAt(i);
        condition=(((s >= 48) && (s <= 57)) || (s==32) ||(s==41) || (s==40) || (s==45) || (s==69) ||(s==88) || (s==84) || (s==101) || (s==120) || (s==116)) ;
        if (!(condition))
        {
            flag=1;
            break;
        }
    }
    if(flag==1)
    return false;
    else
    return true;
}


 
function isAlaphabets(strValue)
{//. , '
    var i,s;
    var flag=0;
    var condition;
    var len =strValue.length;
    for (i=0;i<len;i=i+1)
    {
        s =  strValue.charCodeAt(i);
        condition=((s >= 97) && (s <= 122)) || (s==32)||((s>=65)&&(s<=90))||(s==46) ||(s==39);
        if (!(condition))
        {
            flag=1;
            break;
        }
    }
    if(flag==1)
    return false;
    else
    return true;
}

function isName(strValue)
{//Allows . , ' - and space in Names
    var i,s;
    var flag=0;
    var condition;
    var len =strValue.length;
    for (i=0;i<len;i=i+1)
    {
        s =  strValue.charCodeAt(i);
        condition=((s >= 97) && (s <= 122)) || (s==32)||((s>=65)&&(s<=90))||(s==44)||(s==45)||(s==46) ||(s==39);
        if (!(condition))
        {
            flag=1;
            break;
        }
    }
    if(flag==1)
    return false;
    else
    return true;
}


function isNumeric(strNumber)
{
	if(isNaN(strNumber))
		return false;
	else
		return true;
}
function isAlphaNumeric(strField)
{
    for (var i = 0; i < strField.length; i++)
    {
	
	    if (!((strField.charCodeAt(i) >= 48 && strField.charCodeAt(i) <= 57) || (strField.charCodeAt(i) >= 65 && strField.charCodeAt(i) <= 90) || (strField.charCodeAt(i) >= 97 && strField.charCodeAt(i) <= 123) || (strField.charCodeAt(i)==46) ||(strField.charCodeAt(i)==39) ||(strField.charCodeAt(i)==32)  ||(strField.charCodeAt(i)==44)))
	    {
		    return false;			
	    }
    }		
    return true;
}

function isEmailId(strVal)
{
    var mailid = strVal;
    var valid = /^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;             
    if(mailid.match(valid))
    {
        return true;
    }
    else
    {
       return false;          
    }    
}    
function isMoney(strField)
{
var flg=0
  for (var i = 0; i < strField.length; i++)
    {
	    if (!((strField.charCodeAt(i) >= 48 && strField.charCodeAt(i) <= 57) || (strField.charCodeAt(i) == 46)))
	    {
			flg=1	
		    break;
	    }
    }		
    if(flg==1)
		return false;
    else
		return true;
}
function isDate(val)
{
	var intDate
	var today
	dtetoday = new Date();
	cuttOffYear = 50;
		
	for(var intCtr=0;intCtr<=val.length-1;intCtr++)
		if(val.charAt(intCtr)=="-")
			val=val.replace(/\-/,"/");
	intDate=val.split("/") //Splits the given date as day,month,year2 & stores in intDate array
    if (intDate.length != 3)
		return false;
	if (intDate[1].length > 2 || intDate[1].length==0 || intDate[0].length > 2 || intDate[0].length==0 )
		return false;
	if (intDate[2].length != 4 && intDate[2].length != 2)
		return false;
	var year2 = intDate[2];
		
	 if (intDate[2].length == 2)
	   if ( intDate[2] >= 50 )
	   {
	      var Year1 = eval(year2) + 1900;
	      intDate[2] = Year1+'';
	   }
	   else
	   {
	       var Year1 = eval(year2) + 2000;
	      intDate[2] = Year1+'';
	   }
	 
	
	if (intDate[2]>=1900 && intDate[1]>=1 && intDate[1]<=12 && intDate[0]>=1 && intDate[0]<=DaysInMonth(intDate[1],intDate[2]))
	{
	   
	   return true;
	}
		
	else
		return false;
}


function DaysInMonth(intMon,intYr)
{
    switch(parseInt(intMon,10))
    {
	    case 2:
		    if ((intYr%100)==0)
			    if ((intYr%400)==0) 
				    return 29;
			    else
				    return 28;
		    else if((intYr%4)==0)
				    return 29;
		    else
			    return 28;
		    break;
	    case 4:
		    return 30
		    break;
	    case 6:
		    return 30
		    break;
	    case 9:
		    return 30
		    break;
	    case 11:
		    return 30
		    break;
	    default:
		    return 31;
		    break;
    }
}


function isLater(val) 
{// retruns true if the date is greater than todays date
	var intDate
	var today
	dtetoday = new Date();
	for(var intCtr=0;intCtr<=val.length-1;intCtr++)
		if(val.charAt(intCtr)=="-")
			val=val.replace(/\-/,"/");
	intDate=val.split("/") //Splits the given date as day,month,year2 & stores in intDate array
//	if(intDate.length != 3)
//	{
//	    return false;
//	}
	
	var year2 = intDate[2];
	 if (intDate[2].length == 2)
	   if ( intDate[2] >= 50 )
	   {
	      var Year1 = eval(year2) + 1900;
	      intDate[2] = Year1+'';
	   }
	   else
	   {
	       var Year1 = eval(year2) + 2000;
	      intDate[2] = Year1+'';
	   }
	   
    if (intDate.length != 3)
		return false;
	if (eval(intDate[2])>dtetoday.getFullYear())
		return false;
	if (eval(intDate[2])==dtetoday.getFullYear() && eval(intDate[1])> (dtetoday.getMonth() + 1))
		return false;
	if (eval(intDate[2])==dtetoday.getFullYear() && eval(intDate[1]) == (dtetoday.getMonth() + 1) && eval(intDate[0]) > dtetoday.getDate())
		return false;
	return true;
}
function trimSpace(sString)
{
    while (sString.substring(0,1) == ' ')
    {
            sString = sString.substring(1, sString.length);
    }
    while (sString.substring(sString.length-1, sString.length) == ' ')
    {
        sString = sString.substring(0,sString.length-1);
    }
    return sString;
}
function chkLaterDate(baseVal,chkVal) 
{// retruns true if the chkVal is greater than  baseVal
	
	for(var intCtr=0;intCtr<=baseVal.length-1;intCtr++)
		if(baseVal.charAt(intCtr)=="-")
			baseVal=baseVal.replace(/\-/,"/");
	intDate=baseVal.split("/") //Splits the given date as day,month,year2 & stores in intDate array
	
	for(var intCtr=0;intCtr<=chkVal.length-1;intCtr++)
		if(chkVal.charAt(intCtr)=="-")
			chkVal=chkVal.replace(/\-/,"/");
	intDates=chkVal.split("/") //Splits the given date as day,month,year2 & stores in intDate array
	
    if (intDate.length != 3)
		return false;
	if (eval(intDate[2])>eval(intDates[2]))
		return false;
	if (eval(intDate[2])==eval(intDates[2]) && eval(intDate[1])> (eval(intDates[1])))
		return false;
	if (eval(intDate[2])==eval(intDates[2]) && eval(intDate[1]) == (eval(intDates[1])) && eval(intDate[0]) >eval(intDates[0]))
		return false;
	return true;
}
    
function PrintMe() 
    {
        window.print();
    }