
function alphanum(val)
{
	valid="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ- ";
    sizechar=val.length
    for (var i=0; i<sizechar; i++) {
        if (valid.indexOf(val.charAt(i)) < 0) {
            return false;
        }
    }
    return true;

/*	alert(val.match(/^[a-z]*[0-9]+[a-z]*[0-9]+[a-z]*$/i))
	if(val.match(/^[a-z]*[0-9]+[a-z]*[0-9]+[a-z]*$/i))
	{
		return false;
	}*/
}
function isphone(val)
{
	valid="1234567890-";
    sizechar=val.length
    for (var i=0; i<sizechar; i++) {
        if (valid.indexOf(val.charAt(i)) < 0) {
            return false;
        }
    }
    return true;
}
function removeblank(pavar)
{
	var str="";
	var i, j;
	for(i = 0; i < pavar.length; i++)
	{
		if (pavar.charAt(i) != ' '){
			break;
		}
	}
	for (j = pavar.length; j > 0 ; j--)
	{
		if (pavar.charAt(j) != ' ')
			break;
	}
	if (i >= j)
		str = "";
	else
		str = pavar.substring(i, j);
	return str;
} 

//function to validate date entered thru' combo
function isValidDateCombo(d,m,y)
{
	if(m==2)
	{
		if(y%4==0)
		{
			if(d>29)
				return false;
			else
				return true;
		}
		else
		{
			if(d>28) 
				return false;
			else
				return true;
		}
	}
	if(m==4 || m==6 || m==9 || m==11 || m==4)
	{
		if(d>30)
			return false;
		else
			return true;
	}
	else
		return true;
}		

//function to eliminate *'s 
function gotfocus(field)
{
	var fval
	var i
	fval=eval('document.form1.'+field+'.value')
	lval=fval.length
	flag=true
	for (i=0;i<lval;i++)
	{
		sval=fval.substring(i,1)
		if (sval=="*")
		{
			//eval("document.form1."+field+".value=''")
			flag=false
		}
	}
	if (flag==false)
	{
		eval("document.form1."+field+".value=''")
	}	
}


function isAllZero(str)
{
	var relow=str.length;
	var Str1;
	for(var inc=0;inc<relow;inc++)
	{
		if(str.charAt(inc)!=0)
		{
			return false;
		}
	}
	return true;
}


function isChar(str)
{
//var relow=/^[a-zA-Z]+$/;
var relow=/^[a-zA-Z\s]+$/;
return relow.test(str)
}
function isAlfaNumeric(str)
{
var relow=/^[ a-zA-Z0-9]+$/;
return !relow.test(str)
}


function isEmpty(str)	{
	var t = /\S/
	return !t.test(str)
}
function isZip(str)	{
	if (str.indexOf("-",0) > 0)  var t = /^\d{5}-\d{4}$/
    else var t = /^\d{5}$/
	return t.test(str)
}
function isPhone1(str)	{
	if (str.indexOf("-",0) > 0)  var t=/^[(+]\d{3}[)+]\d{3}[-](\d{4}$)/;//var t = /^\d{3}-\d{3}-\d{4}$/
    else var t = /^\d{10}$/
	return t.test(str)
}
function isInteger(str)	{
	var t = /^\d+$/
	return t.test(str)
}
function isNumeric(str)	{
	var t = /^\d*\.{0,1}\d+$/
	return t.test(str)
}
function isURL (url) {
			var urlPattern = /^(?:(?:http|ftp|https?):\/\/)?(?:[a-z0-9](?:[-a-z0-9]*[a-z0-9])?\.)+(?:com|edu|biz|org|gov|int|info|mil|net|name|museum|coop|aero|[a-z][a-z])\b(?:\d+)?(?:\/[^;"'<>()\[\]{}\s\x7f-\xff]*(?:[.,?]+[^;"'<>()\[\]{}\s\x7f-\xff]+)*)?/;
			return urlPattern.test(url.toLowerCase());
}
function isEmail1(str)	{
	var t = /^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/
	return t.test(str)
}

function isEmail(emstr)
{
	var vEMailID=emstr
	var atPos= vEMailID.indexOf("@") + 1
	var lastDotPos= vEMailID.lastIndexOf(".") + 1
	var firstDotPos = vEMailID.indexOf(".") + 1
	var atInstances=0
	var dotInstances=0
	var inValid = new Array()
	var errorMessages = new Array()
	var errNo = 0
		
	for(var i=0;i<vEMailID.length;i++)
	{
		if(vEMailID.charAt(i)=="@" )
		   atInstances+=1
		else if(vEMailID.charAt(i)==".")
		   dotInstances=1
	}

	inValid[errNo] = (atInstances==0)
	errorMessages[errNo] = "@ symbol is missing"
	errNo++

	inValid[errNo] = (dotInstances==0)
	errorMessages[errNo] = ". symbol is missing"
	errNo++

	inValid[errNo] = (atInstances>1)
	errorMessages[errNo] = "@ symbol should not repeat"
	errNo++

	inValid[errNo] = (Math.abs(firstDotPos-atPos)==1)
	errorMessages[errNo] = "@ and . symbols can't come together"
	errNo++

	inValid[errNo] = ((lastDotPos-atPos)<=1)
	errorMessages[errNo] = ". symbol is missing"
	errNo++

	inValid[errNo] = (atPos==vEMailID.length)
	errorMessages[errNo] = "@ symbol can't appear at end"
	errNo++

	inValid[errNo] = (lastDotPos==vEMailID.length)
	errorMessages[errNo] = ". symbol can't appear at end"
	errNo++

	inValid[errNo] = (eval(lastDotPos+3)>vEMailID.length)
	errorMessages[errNo] = "@ symbol can't appear at end"
	errNo++

	inValid[errNo] = (atPos==0)
	errorMessages[errNo] = "@ symbol is missing"
	errNo++

	inValid[errNo] = (atPos==1)
	errorMessages[errNo] = "@ symbol should not appear at first position"
	errNo++

	inValid[errNo] = (firstDotPos==0)
	errorMessages[errNo] = ". symbol is missing"
	errNo++

	inValid[errNo] = (firstDotPos==1)
	errorMessages[errNo] = ". symbol should not appear at first position"
	errNo++

	inValid[errNo] = (vEMailID.indexOf(" ")>=0)
	errorMessages[errNo] = "E-mail can't contain blank spaces."
	errNo++

	inValid[errNo] = (vEMailID.indexOf("/")>=0) || (vEMailID.indexOf("\\")>=0)
	errorMessages[errNo] = "E-mail can't contain \\ or /"
	errNo++

	var fullErrorMessage = "Invalid " + name + " email address.\n"
	for(var ind=0; ind<errNo; ind++)
	{
		if(inValid[ind])
		{
			fullErrorMessage += errorMessages[ind] + "\n"
		//	alert(fullErrorMessage)			
			return false
		}
	}
		var SingleQuotePos = vEMailID.indexOf("'") 
		if(SingleQuotePos!=-1)
		{
					alert("Enter valid characters. Single Quotes ( ' ) are not allowed.")					
					return false

		} 
		return true

}

function isSSN1(str)	{
	if(str.indexOf("-",0) > 0) var t = /^\d{3}-\d{2}-\d{4}$/
    else var t = /^\d{9}$/
    return t.test(str)
}
function isSSN(str)	{
	var t = /^\d{3}-\d{2}-\d{4}$/
    return t.test(str)
}
function isTime(str)
{
	var t = /^\d{2}\:{1}\d{2}\s([aApP][mM])$/
	if(!t.test(str))
	{ return false;
	}
    str=str.substring(0,5);
	arr = str.split(":")
    if(arr[0]>12) return false;
    if(arr[1]>59) return false;
	
}            
function isDate(str)	{
	var t = /^\d{1,2}\/\d{1,2}\/\d{2,4}$/
	if(!t.test(str)) return false
	arr = str.split("/")
	if(arr.length != 3) return false
//	if(arr[2].length != 2 || arr[2].length != 4) return false
	if(arr[0] > 12 || arr[0] < 1) return false
	if(arr[1] > 31 || arr[1] < 1) return false
	if(arr[0] == 2 && arr[1] > 29) return false
	if(arr[2] < 1) return false 
	return true	
}

//function copmpares two dates whether date1<= date2
function compareDates(d1,d2)
{
	var dt1=d1
	var dt2=d2
	thedate1=dt1.split(" ")
	thedate2=dt2.split(" ")
	themonth1=thedate1[0]
	theday1=thedate1[1]
	theyear1=thedate1[2]

	themonth2=thedate2[0]
	theday2=thedate2[1]
	theyear2=thedate2[2]

	var date1 = new Date(themonth1+" "+ theday1+ ", "+theyear1); 
	var date2 = new Date(themonth2+" "+ theday2+ ", "+theyear2);

	if(date1 <= date2) return true
}

//function copmpares two dates whether date1< date2
function compareSameDates(d1,d2)
{
	var dt1=d1
	var dt2=d2
	thedate1=dt1.split(" ")
	thedate2=dt2.split(" ")
	themonth1=thedate1[0]
	theday1=thedate1[1]
	theyear1=thedate1[2]

	themonth2=thedate2[0]
	theday2=thedate2[1]
	theyear2=thedate2[2]

	var date1 = new Date(themonth1+" "+ theday1+ ", "+theyear1); 
	var date2 = new Date(themonth2+" "+ theday2+ ", "+theyear2);

	if(date1 < date2) return true
}

function isFutureDate(d)
{
	var dt1=new Date()
	var dt2=d
	thedate2=dt2.split(" ")

	themonth2=thedate2[0]
	theday2=thedate2[1]
	theyear2=thedate2[2]

	var date2 = new Date(themonth2+" "+ theday2+ ", "+theyear2);

	if(dt1 > date2) return true

}

function isPastDate(d)
{
	var dt1=new Date()
	var dt2=d
	thedate2=dt2.split(" ")

	themonth2=thedate2[0]
	theday2=thedate2[1]
	theyear2=thedate2[2]

	var date2 = new Date(themonth2+" "+ theday2+ ", "+theyear2);

	if(dt1 < date2) return true

}

function blankbrowse()
{
	event.returnValue=false;
}

