function Validate()
{
	var frmAddRegister = document.RegisterForm;
	var strUserName=frmAddRegister.txtUsername.value;
	var strName1=frmAddRegister.txtFisrtname.value;
	var strName2=frmAddRegister.txtLastname.value;
	var user_name = frmAddRegister.txtUsername.value;
	
	if(nullchk(strUserName) == true){
		alert( "Please enter the Username");
		frmAddRegister.txtUsername.focus( );
		return false;
	}
	if (IsEmpty(frmAddRegister.txtUsername,'text'))
	{
		alert( "Please enter the Username");
		frmAddRegister.txtUsername.focus( );
		return false;
	}//if
	if(HasSpace(strUserName) == true){
		alert("Username should not contain spaces");
		frmAddRegister.txtUsername.focus();
		return false
	}
	var valid_first_characters = new RegExp ("[a-zA-Z]", "g");
	var first_character = user_name.charAt(0);
	if (!valid_first_characters.test (first_character))
	{
		alert("Username must begin with an alphabet\n");
		frmAddRegister.txtUsername.focus();
		return false;
	}
	if(SplNameChar(strUserName) == true){
	    alert("Special characters are not accepted in Username");	
	    frmAddRegister.txtUsername.focus();
	    return false;
	}
	if ( frmAddRegister.txtUsername.value.length < 6 )
	{
		alert( "Username must contain a minimum of 6 characters and a maximum of 20 characters" );
		frmAddRegister.txtUsername.focus( );
		return false;
	}
	var valid_last_characters =new RegExp ("[a-zA-Z0-9]", "g");
	var last_character = user_name.charAt(user_name.length-1);
	if (!valid_last_characters.test (last_character))
	{
		alert ("The last character of the username must either be an alphabet or a numeral. It cannot be '" + last_character + "'");
		frmAddRegister.txtUsername.focus();
		return false;
	}
	
	// Check Password
	if ( frmAddRegister.txtPassword.value == "" )
	{
		alert( "Please enter Password" );
		frmAddRegister.txtPassword.focus( );
		return false;
		
	}
	if(frmAddRegister.txtPassword.value != "")
	{
		if(frmAddRegister.txtPassword.value.length < 4)
		{
			alert( "Password must be atleast 6 Characters and maximum of 10 Characters" );
			frmAddRegister.txtPassword.focus( );
			return false;
		}
	}
	
	var pwd1=frmAddRegister.txtPassword.value;
	pwd1=pwd1.toUpperCase()
	var una=frmAddRegister.txtUsername.value
	una=una.toUpperCase()

	if (pwd1 == una)
	{
		alert("Username and Password cannot be the same. Please change the Password");
		frmAddRegister.txtPassword.focus();return false;
	}

	if ( frmAddRegister.txtconfirmPassword.value == "" )
	{
		alert( "Please enter Confirm Password" );
		frmAddRegister.txtconfirmPassword.focus( );
		return false;
	}

	if ( frmAddRegister.txtPassword.value != frmAddRegister.txtconfirmPassword.value )
	{
		alert( "Password does not match, Please Re-Enter Password" );
		frmAddRegister.txtPassword.value = "";
		frmAddRegister.txtconfirmPassword.value = "";
		frmAddRegister.txtPassword.focus( );
		return false;
	}

	tmpPass = frmAddRegister.txtPassword.value;
	goodPasswd = 1;
	for( var idx=0; idx< tmpPass.length; idx++ )
	{
		ch = tmpPass.charAt(idx);
		if( !((ch>='a') && (ch<='z')) && !((ch>='A') && (ch<='Z')) && !((ch>=0) && (ch <=9)) )
		{
			goodPasswd = 0;
			break;
		}
	}

	if( goodPasswd ==0 )
	{
		alert( "Password should comprise only Numbers and Digits" );
		frmAddRegister.password.value="";
		frmAddRegister.txtconfirmPassword.value="";
		frmAddRegister.password.focus();
		return false;
	}

	if(nullchk(strName1) == true)
	{
		alert( "Please enter First Name");
		frmAddRegister.txtFisrtname.focus( );
		return false;
	}//if

	if (IsEmpty(frmAddRegister.txtFisrtname,'text'))
	{
		alert( "Please enter First Name");
		frmAddRegister.txtFisrtname.focus( );
		return false;
	}//if
	if(IsNumberPresent(strName1)==true)
	{
		alert("First Name should not contain any numbers");	
		frmAddRegister.txtFisrtname.focus();
		return false;
	}//
	if(SplNameChar(strName1) == true){
	    alert("Special characters are not accepted in First Name");	
	    frmAddRegister.txtFisrtname.focus();
	    return false;
	}

	if(nullchk(strName2) == true)
	{
		alert( "Please enter Last Name");
		frmAddRegister.txtLastname.focus( );
		return false;
	}//if

	if (IsEmpty(frmAddRegister.txtLastname,'text'))
	{
		alert( "Please enter Last Name");
		frmAddRegister.txtLastname.focus( );
		return false;
	}//if
	if(IsNumberPresent(strName2)==true)
	{
		alert("Last Name should not contain any numbers");	
		frmAddRegister.txtLastname.focus();
		return false;
	}//
	if(SplNameChar(strName2) == true){
	    alert("Special characters are not accepted in Last Name");	
	    frmAddRegister.txtLastname.focus();
	    return false;
	}
	
	// Check E-mail
	if ( frmAddRegister.txtEmail.value == "" )
	{
		alert( "Please enter a valid E-mail ID" );
		frmAddRegister.txtEmail.focus( );
		return false;
	}
	else
	{
		if ( !ValidateEmail( frmAddRegister.txtEmail.value ) )
		{
			alert( "Invalid E-mail " + frmAddRegister.txtEmail.value );
			frmAddRegister.txtEmail.focus( );
			return false;
		}
		for ( var Idx = 0; Idx < frmAddRegister.txtEmail.value.length; Idx++ )
		{
			if ( frmAddRegister.txtEmail.value.charAt(Idx) == '	' 
				|| frmAddRegister.txtEmail.value.charAt(Idx) == ' '
					|| frmAddRegister.txtEmail.value.charAt(Idx) == ','
					|| frmAddRegister.txtEmail.value.charAt(Idx) == '/'
					|| frmAddRegister.txtEmail.value.charAt(Idx) == '\\'
					|| frmAddRegister.txtEmail.value.charAt(Idx) == ';' )
			{
				alert( "Blanks or other invalid characters are not allowed in the E-mail ID.\nPlease enter only one E-mail ID." );
				frmAddRegister.txtEmail.focus( );
				return false;
			}
		}
	}
	var strAddress1=frmAddRegister.txtAddress1.value;
	
	if(nullchk(strAddress1) == true){
		alert( "Please enter the Address1");
		frmAddRegister.txtAddress1.focus( );
		return false;
	}
	return true;		
}

//******************************************** Check Username & Name Fields
function SplNameChar(txt){
	if(txt.length == 0)
		return false;
	for(var i = 0;i < txt.length;i++){
		if(txt.charAt(i) == '@' || txt.charAt(i) == '#' 
			|| txt.charAt(i) == '!' || txt.charAt(i) == '$' 
			|| txt.charAt(i) == '%' || txt.charAt(i) == '&' 
			|| txt.charAt(i) == '^' || txt.charAt(i) == '*' 
			|| txt.charAt(i) == '~' || txt.charAt(i) == '_' 
			|| txt.charAt(i) == '-' || txt.charAt(i) == '=' 
			|| txt.charAt(i) == '+' || txt.charAt(i) == '|' 
			|| txt.charAt(i) == '?' || txt.charAt(i) == '<' 
			|| txt.charAt(i) == '>' || txt.charAt(i) == '/' 
			|| txt.charAt(i) == '[' || txt.charAt(i) == ']' 
			|| txt.charAt(i) == '(' || txt.charAt(i) == ')' 
			|| txt.charAt(i) == '`' || txt.charAt(i) == "," 
			|| txt.charAt(i) == ":" || txt.charAt(i) == ";" 
			|| txt.charAt(i) == "{" 
			|| txt.charAt(i) == "}" || txt.charAt(i) == '"'
			|| txt.charAt(i) == '\\' )
			return true;
	}
	return false;
}//SplNameChar

function HasSpace(txt){		
	if(txt.length == 0)
		return false;
	for(var i = 0;i < txt.length;i++){
		if(txt.charAt(i) == " ")
			return true;
	}
	return false;
}//HasSpace

function nullchk(txt)
{
	if (txt == "" || txt == null)
	{ return true; }
		
	var i;
	for(i=0;i<txt.length;i++)
	{
		if (txt.charAt(i) != " ")
		return false
	}
	return true;
}//nullchk

function ValidateEmail(txtEmail)
	{
		var funRegExp	      = new RegExp("^[A-Za-z][A-Za-z0-9_\\.\-]*\\@[a-zA-Z0-9]+\\.[a-zA-Z]+[\\.]?[a-zA-Z]*$");
		//var funRegExp = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
		if (!txtEmail.match(funRegExp)) { return false; }//if
		return true;
	
}

function IsEmpty(obj, obj_type)
{
	if (obj_type == "text" || obj_type == "password" || obj_type == "textarea" || obj_type == "file")
	{
		var objValue;
		objValue = obj.value.replace(/\s+$/,"");

		if (objValue.length == 0)
		{ return true; }
		else { return false; }
	}//if
	else if (obj_type == "select")
	{
		for (i=0; i < obj.length; i++) {
			if (obj.options[i].selected) {
				if(obj.options[i].value == "") {
					obj.focus();
					return true;
				}
				else { return false; }
			}
		}
		return true;	
	}
	else if (obj_type == "radio" || obj_type == "checkbox") {
		if (!obj[0] && obj) {
			if (obj.checked) {
				return false;
			}
			else
			{
				obj.focus();
				return true;	
			}
		}
		else 
		{
			for (i=0; i < obj.length; i++) {
				if (obj[i].checked) {
					return false;
				}
			}
			obj[0].focus();
			return true;
		}
	}
	else
	{
		return false;
	}
}

function IsNumberPresent(obj){
	if(obj.length == 0)
		return false;
	for(var i = 0;i < obj.length;i++){
		if(obj.charAt(i) >= '0' && obj.charAt(i) <= '9') 
			return true;
		else
			continue;
	}
	return false;
}//IsNumberPresent

function validateUserName (txtUsername)
{
	var frmAddRegister = document.RegisterForm;
	var strUserName=frmAddRegister.txtUsername.value;
	var user_name = frmAddRegister.txtUsername.value;
	if(nullchk(strUserName) == true){
		alert( "Please enter the Username");
		frmAddRegister.txtUsername.focus( );
		return false;
	}
	if (IsEmpty(frmAddRegister.txtUsername,'text'))
	{
		alert( "Please enter the Username");
		frmAddRegister.txtUsername.focus();
		return false;
	}//if
	if(HasSpace(strUserName) == true){
		alert("Username should not contain spaces");
		frmAddRegister.txtUsername.focus();
		return false
	}
	var valid_first_characters = new RegExp ("[a-zA-Z]", "g");
	var first_character = user_name.charAt(0);
	if (!valid_first_characters.test (first_character))
	{
		alert("Username must begin with an alphabet\n");
		frmAddRegister.txtUsername.focus();
		return false;
	}
	if(SplNameChar(strUserName) == true){
	    alert("Special characters are not accepted in Username");	
	    frmAddRegister.txtUsername.focus();
	    return false;
	}
	if ( frmAddRegister.txtUsername.value.length < 6 )
	{
		alert( "Username must contain a minimum of 6 characters and a maximum of 20 characters" );
		frmAddRegister.txtUsername.focus( );
		return false;
	}
	var valid_last_characters =new RegExp ("[a-zA-Z0-9]", "g");
	var last_character = user_name.charAt(user_name.length-1);
	if (!valid_last_characters.test (last_character))
	{
		alert ("The last character of the username must either be an alphabet or a numeral. It cannot be '" + last_character + "'");
		frmAddRegister.txtUsername.focus();
		return false;
	}
	return true;
}//validateUserName
function checkUser()
{
	nm = document.RegisterForm.txtUsername.value;
	nm = nm.toString().toLowerCase();
	if(validateUserName(document.RegisterForm.txtUsername))
	{
		window.open("../check-user.php?Username="+nm+"&fname=RegisterForm","win1",'width=450,height=140,menubar=no,status=no,scrollbars=no,toolbar=no,top=200,left=250');
	}
	else{
		//document.frmAddRegistrationBasic.username.focus();
		//return false;
	}
}//checkUser

function winclose(uname)
{
	window.opener.document.RegisterForm.txtUsername.value = '';
	window.close();
}
function winlink(uname)
{
	window.opener.document.RegisterForm.txtPassword.focus();
	window.close();
}
//*************************************** Login
function LoginValidate()
{
	var frmAddRegister = document.LoginForm;
	var strUserName=frmAddRegister.txtUsername.value;
	if(nullchk(strUserName) == true){
		alert( "Please enter the Username");
		frmAddRegister.txtUsername.focus( );
		return false;
	}
	if (IsEmpty(frmAddRegister.txtUsername,'text'))
	{
		alert( "Please enter the Username");
		frmAddRegister.txtUsername.focus( );
		return false;
	}//if
	if(HasSpace(strUserName) == true){
		alert("Username should not contain spaces");
		frmAddRegister.txtUsername.focus();
		return false
	}
	// Check Password
	if ( frmAddRegister.txtPassword.value == "" )
	{
		alert( "Please enter Password" );
		frmAddRegister.txtPassword.focus( );
		return false;		
	}
	return true;
}
//*************************************************** Forgot password
function ForgotPassValidate()
{
	var frmForgotpass = document.ForgotForm;
	var strUserName=frmForgotpass.ForgotUsername.value;
	var user_name = frmForgotpass.txtUsername.value;
		
	if(nullchk(strUserName) == true){
		alert( "Please enter the Username");
		frmForgotpass.ForgotUsername.focus( );
		return false;
	}
	if (IsEmpty(frmForgotpass.ForgotUsername,'text'))
	{
		alert( "Please enter the Username");
		frmForgotpass.ForgotUsername.focus( );
		return false;
	}//if
	if(HasSpace(strUserName) == true){
		alert("Username should not contain spaces");
		frmForgotpass.ForgotUsername.focus();
		return false
	}
	if(SplNameChar(strUserName) == true){
	    alert("Special characters are not accepted in Username");	
	    frmForgotpass.ForgotUsername.focus();
	    return false;
	}
}