
function IsValidEMailID(EMailID){
	var email =/[-a-zA-Z0-9_\.]+@[-a-zA-Z0-9]+\.[-a-zA-Z0-9\.]+/;
	var eflag = EMailID.match(email);
	return eflag;
}
function formvalidation(){
	obj = document.getElementById('txtSubscriberEmail');
	if (obj.value != ""){
		if (isEmail(obj.value)){
			obj = document.getElementById('txtSubscriberName');
			if (obj.value != ""){
				if (isGoodName(obj)){
					for(var i=0;i<20;i++){
						obj = document.getElementById('txtfld' + i);
						if (obj != null){
							if (obj.value != ""){
								switch (i){
									case 1:
										if (!isGoodCity(obj)){alert('Invalid City');obj.focus();return false;}break;
									case 2:
										if (!isGoodCity(obj)){alert('Invalid Country');obj.focus();return false;}break;
									case 3:
										if (!isNumberOnly(obj)){alert('Invalid Pincode');obj.focus();return false;}break;
									case 4:
										if (!isGoodAddress(obj)){alert('Invalid Address');obj.focus();return false;}break;
									case 5:
										if (!isAmountOnly(obj)){alert('Invalid MHI');obj.focus();return false;}break;
								}
							}else{alert('Empty fields not allowed.');obj.focus();return false;}
						}
					}
				}else{alert('Invalid Name.');obj.focus();return false;}
			}else{alert('Name field is empty.');obj.focus();return false;}
		}else{alert('Invalid emailid');obj.focus();return false;}
	}else{alert('emailid field is empty.');obj.focus();return false;}
	return true;
}



function isGoodAddress(add)
{
	var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890 @#*()_+|\/=-[]{};:;.,;&"
	var checkStr = add.value;		
	for (i = 0;  i < checkStr.length;  i++){
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))break;
		if (j == checkOK.length){return false;break;}
	}
	return true;
}
function isGoodName(name)
{
	var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz "
	var checkStr = name.value;		
	for (i = 0;  i < checkStr.length;  i++){
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))break;
		if (j == checkOK.length){return false;break;}		
	}
	return true;
}
function isGoodCity(city)
{
	var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz "
	var checkStr = city.value;		
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))break;
		if (j == checkOK.length){return false;break;}		
	}	
	return true;
}
function isAmountOnly(num)
{
	var checkOK = "1234567890."
	var checkStr = num.value;			
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))break;
		if (j == checkOK.length){return false;break;}		
	}	
	return true;
}
function isNumberOnly(num)
{
	var checkOK = "1234567890"
	var checkStr = num.value;			
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))break;
		if (j == checkOK.length){return false;break;}		
	}	
	return true;
}
function validateDate(ddStr,mmStr,yyStr)
{	//var msg;
	var newMonth;
	var newDate;
	var newYear;
	var monthArray;
	var flag;
	flag=true;	
	newDate=ddStr;
	newMonth=mmStr;
	newYear=yyStr;	
	//alert(newDate);
	//alert(newMonth);
	//alert(newYear);
	//msg="";
	monthArray = new Array();
	monthArray[1] = 31;
	monthArray[3] = 31;
	monthArray[4] = 30;
	monthArray[5] = 31;
	monthArray[6] = 30;
	monthArray[7] = 31;
	monthArray[8] = 31;
	monthArray[9] = 30;
	monthArray[10] = 31;
	monthArray[11] = 30;
	monthArray[12] = 31;		
	
	// Check to ensure that the month is in range		
	if ((newMonth < 1) || (newMonth > 12))
	{flag=false;}
	
	// Check to ensure that the date is in range
	//newDate = ddStr.value;	
	if ((newDate < 1) || (newDate > 31))
	{flag=false;}
	
	// Check to ensure the end-date, w.r.t the month
	//newMonth=mmStr.value;	
	if (newMonth != 2)
	{
		if (newDate > monthArray[newMonth])
		{flag=false;}
	}
	else
	{
		//newYear=yyStr.value;
		// For february, also check the end-date w.r.t the year
		if (isLeapYear(newYear))
		{
			if (newDate > 29)
			{flag=false;}			
		}
		else
		{
			if (newDate > 28)
			{flag=false;}			
		}		
	}
	if (flag==false)
		return false;
	else
		return true;		
	
}
function isLeapYear(testYear)
{
	if ((testYear % 400) == 0)return true;
	if ((testYear % 100) == 0)return false;
	return ((testYear % 4) == 0)
}

function isEmail(str)
{
	var supported = 0;
	if (window.RegExp){
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(str)){testresults=true;}else{testresults=false;}
	return (testresults)
}

