function isValidMail(val){
    var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
    if (!val.match(re)) {
        return false;
    } else {
        return true;
    }
}
function makeHttpRequestObj()
{
	var ajaxRequest;
	try
	{
		ajaxRequest=new XMLHttpRequest();
	}
	catch(Error)
	{
		try
		{
			ajaxRequest=new ActiveXObject('msxml.XMLHTTP');
		}
		catch(Error)
		{
			try
			{
				ajaxRequest=new ActiveXObject('Microsoft.XMLHTTP');
			}
			catch(Error)
			{
				ajaxRequest=null;
			}
		}
	}
	return ajaxRequest;
}
function addMember(url)
{
	
	addMemberAction(url);
	return true;
}

function addMemberAction(url)
{
	var errorFlag=false;
	var member_login = document.getElementById('member_login').value;
	var member_password = document.getElementById('member_password').value;
	var name = document.getElementById('name').value;
	var home_phone = document.getElementById('home_phone').value;
	var work_phone = document.getElementById('work_phone').value;
	var location = document.getElementById('location').value;
	
	if(document.memberForm.member_level[0].checked == true) member_level = 1;
	if(document.memberForm.member_level[1].checked == true) member_level = 2;
	
	 if(member_login=="")
			{		
				/*	Ext.MessageBox.show({
					title: 'Error',
					msg: 'Please enter UserName',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});
					document.getElementById('member_login').focus();
					return false;	
					*/
					errorFlag = true;
			}
	 if(!(isValidMail(member_login)))
		{	
		 /*Ext.MessageBox.show({
			title: 'Error',
			msg: 'Please enter valid Email',
			buttons: Ext.MessageBox.OK,
			icon: Ext.MessageBox.WARNING
			});	
			
				document.getElementById('member_login').focus(); return false;	
				
		*/
		errorFlag = true;
		}
	 if(member_password=="")
		{		
			/*Ext.MessageBox.show({
				title: 'Error',
				msg: 'Please enter Password',
				buttons: Ext.MessageBox.OK,
				icon: Ext.MessageBox.WARNING
				});
				document.getElementById('member_password').focus();
				return false;	
				*/
				errorFlag = true;
		}
	 if(name=="")
		{		
				/*Ext.MessageBox.show({
				title: 'Error',
				msg: 'Please enter Name',
				buttons: Ext.MessageBox.OK,
				icon: Ext.MessageBox.WARNING
				});
				document.getElementById('name').focus();
				return false;	
				*/
				errorFlag = true;
		}
	 if (!document.memberForm.signup_user_terms_of_use.checked){
			var termsVal = document.memberForm.signup_user_terms_of_use.checked
		/* Ext.MessageBox.show({
				title: 'Error',
				msg: 'Please accept terms and conditions',
				buttons: Ext.MessageBox.OK,
				icon: Ext.MessageBox.WARNING
				});
		 return false;
		 */
		 errorFlag = true;
		}
		
		if(errorFlag == false)
		{
			var urlData = "member_login="+member_login+"&member_login="+member_login+"&member_password="+member_password+
	 				  "&name="+name+"&home_phone="+home_phone+"&work_phone="+work_phone+"&location="+location+"&member_level="+member_level+"&action=addMember";
		}
	var response="";
	//alert(urlData);
	var ajaxRequest=makeHttpRequestObj();
	if(ajaxRequest!=null){
		ajaxRequest.onreadystatechange=function()
		{	
			if(ajaxRequest.readyState==4)
			{
				
				postValue=ajaxRequest.responseText;
			/*	Ext.MessageBox.show({
					title: 'Success',
					msg: postValue,
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	
				*/
				//alert(document.getElementById('promptMess').innerHTML);
				if(postValue == 1)
				{
					/*Ext.MessageBox.show({
					title: 'Error',
					msg: 'UserName already exists in the database. Try another.',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	
					*/
					document.getElementById('errorRegUserExist').style.display="block";
				}
				if(postValue == 2)
				{
					/*Ext.MessageBox.show({
					title: 'Success',
					msg: 'UserName registered Successfully.Please check your mail to verify the email address',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	
					*/
				document.getElementById('errorRegUserExist').style.display="none";
				document.getElementById('errorRegUserSuccess').style.display="block";
				document.getElementById('errorRegUserFail').style.display="none";
				//window.location.reload(true);
				setTimeout("reloadScreen()",5000);
				}
				if(postValue == 3)
				{
					/*Ext.MessageBox.show({
					title: 'Error',
					msg: 'UserName could not be added. Try again.',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});
					*/
					document.getElementById('errorRegUserSuccess').style.display="none";
					document.getElementById('errorRegUserExist').style.display="none";
					document.getElementById('errorRegUserFail').style.display="block";
				}
				
				
			}
		}
	}
	
	if(errorFlag == false)
		{
			ajaxRequest.open("POST",url,true);
			ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			ajaxRequest.setRequestHeader("Connection", "close");
			//
			
			ajaxRequest.send(urlData);
			return response;
		}
		else
		{
			validateMemberLogin(member_login);
			validateMemberPassword(member_password);
			validateMemberName(name);
			validateMemberTerms(termsVal);
		}
}

function validateMemberLogin(member_login)
{	
	if(member_login=="")
	{ 
		document.getElementById('errorRegUserName').style.display="block";
	}
	else
	{ 
		if(!(isValidMail(member_login)))
		{  
			document.getElementById('errorRegUserName').style.display="none";
			document.getElementById('errorRegEmail').style.display="block";
		}else
		{  
			document.getElementById('errorRegEmail').style.display="none";
			document.getElementById('errorRegUserName').style.display="none";
		}
	}
}
function validateMemberPassword(member_password)
{	
		if(member_password=="")
		{  
			
			document.getElementById('errorRegPassword').style.display="block";
		}else
		{  
			document.getElementById('errorRegPassword').style.display="none";
			
		}
}
function validateMemberName(name)
{	
	if(name=="")
		{  
			
			document.getElementById('errorRegName').style.display="block";
		}else
		{  
			document.getElementById('errorRegName').style.display="none";
			
		}
}
function validateMemberTerms(termsVal)
{	
	if(termsVal==false)
		{  
			
			document.getElementById('errorRegTerms').style.display="block";
		}else
		{  
			document.getElementById('errorRegTerms').style.display="none";
			
		}
}

function loginMember(url)
{
	
	loginMemberAction(url);
	return true;
}

function loginMemberAction(url)
{
	var errorFlag1 = false;
	var member_login1 = document.getElementById('member_login1').value;
	var member_password1 = document.getElementById('login_password1').value;
	
	if(member_login1=="" || member_login1== "Enter Your User Name")
			{	/*	Ext.MessageBox.show({
					title: 'Error',
					msg: 'Please enter UserName',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});
					document.getElementById('member_login1').focus();
					return false;	
					*/
					errorFlag1 = true;
			}
	 
	 if(member_password1=="" || member_password1== "Enter Your Password")
		{		/*Ext.MessageBox.show({
				title: 'Error',
				msg: 'Please enter Password',
				buttons: Ext.MessageBox.OK,
				icon: Ext.MessageBox.WARNING
				});
				document.getElementById('login_password1').focus();
				return false;	
				*/
				errorFlag1 = true;
		}
	
		if(errorFlag1 == false)
		{ 
			var urlData = "member_login1="+member_login1+"&member_password1="+member_password1+"&action=loginMember";
		}
	var response="";
	//alert(urlData);
	var ajaxRequest=makeHttpRequestObj();
	if(ajaxRequest!=null){
		ajaxRequest.onreadystatechange=function()
		{	
			if(ajaxRequest.readyState==4)
			{
				
				postValue=ajaxRequest.responseText;
				//alert(postValue);
			/*	Ext.MessageBox.show({
					title: 'Success',
					msg: postValue,
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	
				*/
				//alert(document.getElementById('promptMess').innerHTML);
				if(postValue == 1)
				{
					window.location.reload(true);
					//setTimeout("reloadScreen()",5000);
				}
				if(postValue == 2)
				{
					/*Ext.MessageBox.show({
					title: 'Error',
					msg: 'User Id/ Password does not match',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});
					*/
					document.getElementById('errorLogPassword').style.display="none";
					document.getElementById('errorLogUserName').style.display="none";
					document.getElementById('errorLogUserMatch').style.display="block";
					document.getElementById('errorLogUserExist').style.display="none";
				  
				}
				if(postValue == 3)
				{
					/*Ext.MessageBox.show({
					title: 'Error',
					msg: 'User Id does not exists',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});
					*/
				document.getElementById('errorLogPassword').style.display="none";
				document.getElementById('errorLogUserName').style.display="none";
				document.getElementById('errorLogUserMatch').style.display="none";
				document.getElementById('errorLogUserExist').style.display="block";
				}
				
				
			}
		}
	}
	
	if(errorFlag1 == false)
	{ 
		ajaxRequest.open("POST",url,true);
		ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		ajaxRequest.setRequestHeader("Connection", "close");
		//
		
		ajaxRequest.send(urlData);
		return response;
	}
	else
	{
		validateLogUserName(member_login1);
		validateLogPassword(member_password1);
	}
}

function validateLogUserName(member_login1)
{	
	if((member_login1=="") || (member_login1== "Enter Your User Name"))
	{ 
		document.getElementById('errorLogUserName').style.display="block";
	}
	else
	{ 
		document.getElementById('errorLogUserName').style.display="none";
	}
}
function validateLogPassword(member_password1)
{	
		if((member_password1=="") || (member_password1== "Enter Your Password"))
		{  
			
			document.getElementById('errorLogPassword').style.display="block";
		}else
		{  
			document.getElementById('errorLogPassword').style.display="none";
			
		}
}

function sendPassword(url)
{
	
	sendPasswordAction(url);
	return true;
}

function sendPasswordAction(url)
{
	var errorFlag3 = false;
	var member_login = document.getElementById('email').value;
	
	
	 if(member_login=="")
			{		
					//document.getElementById('errorForgetMess').innerHTML="Enter UserName";

				/*	Ext.MessageBox.show({
					title: 'Error',
					msg: 'Please enter UserName',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	


					return false;	
				*/
				errorFlag3 = true;
			}
	 if(!(isValidMail(member_login)))
		{		
			//document.getElementById('errorForgetMess').innerHTML="Please enter valid UserName";
			/*Ext.MessageBox.show({
					title: 'Error',
					msg: 'Please enter valid UserName',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	
			return false;
			*/
			errorFlag3 = true;
		}
	 	if(errorFlag3 == false)	
		{
			var urlData = "email="+member_login+"&action=forgetPassword";
		}
	var response="";
	//alert(urlData);
	var ajaxRequest=makeHttpRequestObj();
	if(ajaxRequest!=null){
		ajaxRequest.onreadystatechange=function()
		{	
			if(ajaxRequest.readyState==4)
			{
				
				postValue=ajaxRequest.responseText;
				//alert(postValue);
			/*	Ext.MessageBox.show({
					title: 'Success',
					msg: postValue,
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	
				*/
				//alert(document.getElementById('promptMess').innerHTML);
				if(postValue == 1)
				{
					//document.getElementById('errorForgetMess').innerHTML="Your Password has been sent.Please check your Email";

				/*	Ext.MessageBox.show({
					title: 'Error',
					msg: 'Your Password has been sent.Please check your Email',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	

					
					window.location.reload(true);
					*/
				document.getElementById('errorForValidUser').style.display="none";
				document.getElementById('errorForUserExist').style.display="none";
				document.getElementById('errorForUserSuccess').style.display="block";
				setTimeout("reloadScreen()",5000);
				}
				if(postValue == 0)
				{
				//document.getElementById('errorForgetMess').innerHTML="Username Not Found.Try Again";
				
				/*Ext.MessageBox.show({
					title: 'Error',
					msg: 'Username Not Found.Try Again',
					buttons: Ext.MessageBox.OK,
					icon: Ext.MessageBox.WARNING
					});	

				return false;
				*/
				document.getElementById('errorForValidUser').style.display="none";
				document.getElementById('errorForUserExist').style.display="block";
				}
							
				
			}
		}
	}
	
	if(errorFlag3 == false)	
		{
			ajaxRequest.open("POST",url,true);
			ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			ajaxRequest.setRequestHeader("Connection", "close");
			//
			
			ajaxRequest.send(urlData);
			return response;
		}
		else
		{
			validateForLogin(member_login);
		}
}

function validateForLogin(member_login)
{	
		if(!(isValidMail(member_login)))
		{  
			document.getElementById('errorForValidUser').style.display="block";
		}else
		{  
			document.getElementById('errorForValidUser').style.display="none";
		}
	
}


function reloadScreen()
{
	window.location.reload(true);
}
