//Javascript back end Document

/*general functions to check the users email, alphabets, name, password, 
remove spaces form the Name through trim() etc..*/

function trim(strVar) { 
     if(strVar.length >0)
	 {
	        while(strVar.charAt(0)==" ") 
			strVar=strVar.substring(1,strVar.length); 
			while(strVar.charAt(strVar.length-1)==" ") 
			strVar=strVar.substring(0,strVar.length-1); 			
	 }
	 return strVar; 
}
function isNotAlphabets(str){
		for (var i = 0; i < str.length; i++)
		{
				re = / /gi				//Replace the space between words with no space
				str = str.replace(re,"");
			
				var ch = str.substring(i, i + 1);
				
				if((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch)) 
				{
					return true;
				}
		}
		return false;
}
function isNotNumeric(str){
		for (var i = 0; i < str.length; i++)
		{
				var ch = str.substring(i, i + 1);
				if((ch < '0' || '9' < ch)) 
				{
					if(ch == "-" || ch == ".") continue;
					return true;
				}
		}
		return false;
}

/*To check the Login ID of the User*/

function isNotID(str){
		for (var i = 0; i < str.length; i++)
		{
				re = / /gi				//Replace the space between words with no space
				str = str.replace(re,"");
			
				var ch = str.substring(i, i + 1);
				if((ch < '0' || '9' < ch) && ((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch))) 
				{
					if(ch == "_") continue;
					return true;
				}
		}
		return false;
}
function isValidEmail(emailid){		
		var l=emailid.length;
		if(l==0)
		{
				return false;	
		}
		if(l!=0)
		{
				var a=emailid.indexOf('@');
				var d=emailid.lastIndexOf('.');
				var str1=emailid.substr(0,a);
				var str2=emailid.substr(a+1,d-a-1);
				var str3=emailid.substr(d+1,l);
				var len1=str1.length;
				var len2=str2.length;
				var len3=str3.length;
				if(a<0 || d<2)
				{
						alert ("Check for missing '@' or '.' ");
						return false;
				}
				else if (a>d)
				{
						alert ("Invalid email. Please enter correct email address");
						return false;
				}				
				if (len1<=1 || len2<=1 || len3 <=1)
				{
						alert ("Invalid email. Please enter correct email address");
						return false;
				}				
		}
		return true;
}

function checkAll(checked)
{
	  for(var i=0;i<document.frm.elements.length;i++)
	  {  
		 	var e = document.frm.elements[i];
			if(e.type == "checkbox") e.checked = checked;
	  }

}
//Export applicant to HTML
function checkAllExportHtml(checked)
{
	  for(var i=0;i<document.frmdelStatus.elements.length;i++)
	  {  
		 	var e = document.frmdelStatus.elements[i];
			if(e.type == "checkbox") e.checked = checked;
	  }

}

//Check All permissions
function checkAllperm(checked)
{
	  for(var i=0;i<document.showPermFrm.elements.length;i++)
	  {  
		 	var e = document.showPermFrm.elements[i];
			if(e.type == "checkbox") e.checked = checked;
	  }

}

function checkAllperm1(checked)
{
	  for(var i=0;i<document.permFrm.elements.length;i++)
	  {  
		 	var e = document.permFrm.elements[i];
			if(e.type == "checkbox") e.checked = checked;
	  }

}

//Login Form 
function checklogin(loginForm)
{
	//User Name
		  var uname = trim(document.loginForm.user_name.value);
		  if(uname.length == 0)
		  {
		       alert("Please enter user name");
			   document.loginForm.user_name.focus();
			   return false;
		  }
		  
		  if(isNotID(uname))
		  {
		       alert("Invalid Characters in user name");
			   document.loginForm.user_name.focus();
			   return false;		  
		  }
		  
		  //Password
		  var password = trim(document.loginForm.password.value);
		  if(password.length == 0)
		  {
		       alert("Please enter password");
			   document.loginForm.password.focus();
			   return false;
		  }	
}

//Message Board
function checkmessage(membersForm)
{
	//User Name
		  var uname = trim(document.membersForm.message.value);
		  if(uname.length == 0)
		  {
		       alert("Please enter message");
			   document.membersForm.message.focus();
			   return false;
		  }
		  if(uname.length > 1500)
		  {
		       alert("Message should not be greater than 1500 characters");
			   document.membersForm.message.focus();
			   return false;
		  }
		  
}
//Back End User
function checkregister(membersForm)
{
		//User Name
		 var uname = trim(document.membersForm.user_name.value);
		  if(uname.length == 0)
		  {
		       alert("Please enter user name");
			   document.membersForm.user_name.focus();
			   return false;
		  }
		  
		  if(isNotID(uname))
		  {
		       alert("Invalid Characters in user name");
			   document.membersForm.user_name.focus();
			   return false;		  
		  }
		    
		   //password
		 var password = trim(document.membersForm.password.value);
		  if(password.length == 0)
		  {
		       alert("Please enter password");
			   document.membersForm.password.focus();
			   return false;
		  }
		  if(password.length < 6)
		  {
		       alert("Password cannot be less than 6 characters.");
			   document.membersForm.password.focus();
			   return false;
		  }
		  //confirm password
		 var cpassword = trim(document.membersForm.confirm_password.value);
		  if(cpassword.length == 0)
		  {
		       alert("Please enter confirm password");
			   document.membersForm.confirm_password.focus();
			   return false;
		  }
		  
		  //comparing password
		  if(password != cpassword)
		  {
		       alert("Passwords do not match.");
			   document.membersForm.confirm_password.focus();
			   return false;
		  }
		 
		 
	//First Name
		  
		  var fname = trim(document.membersForm.first_name.value);
		  if(fname.length == 0)
		  {
		       alert("Please enter first name");
			   document.membersForm.first_name.focus();
			   return false;
		  }
		  
		  if(isNotID(fname))
		  {
		       alert("Invalid Characters in first name");
			   document.membersForm.first_name.focus();
			   return false;		  
		  }
		  if(isNotAlphabets(fname))
		  {
		       alert("Please enter only Alphabets in first name field.");
			   document.membersForm.first_name.focus();
			   return false;		  
		  }
		  //Last Name
		  var lname = trim(document.membersForm.last_name.value);
		  if(lname.length == 0)
		  {
		       alert("Please enter last name");
			   document.membersForm.last_name.focus();
			   return false;
		  }
		  
		  if(isNotID(lname))
		  {
		       alert("Invalid Characters in last name");
			   document.membersForm.last_name.focus();
			   return false;		  
		  }
		  if(isNotAlphabets(lname))
		  {
		       alert("Please enter only Alphabets in last name field.");
			   document.membersForm.last_name.focus();
			   return false;		  
		  }
		  	  		  		  
		   //Age
		  var age = trim(document.membersForm.age.value);
		  if(age.length == 0)
		  {
		       alert("Please enter age");
			   document.membersForm.age.focus();
			   return false;
		  }
		   //Email		  
		  var email_1 = trim(document.membersForm.email.value);
		  if(email_1.length == 0)
		  {
		       alert("Please enter email");
			   document.membersForm.email.focus();
			   return false;
		  }
		  if(isValidEmail(email_1) == 0)
		  {
			   
			   document.membersForm.email.focus();
			   return false;		  
		  }	
		  //Address
		  var address_1 = trim(document.membersForm.address.value);
		  if(address_1.length == 0)
		  {
		       alert("Please enter address");
			   document.membersForm.address.focus();
			   return false;
		  }
		  //city
		  var city = trim(document.membersForm.city.value);
		  if(city.length == 0)
		  {
		       alert("Please enter city.");
			   document.membersForm.city.focus();
			   return false;
		  }
		  if(isNotAlphabets(city))
		  {
		       alert("Please enter only Alphabets in City.");
			   document.membersForm.city.focus();
			   return false;
		  }
		  if(isNotID(city))
		  {
		       alert("Invalid characters in City.");
			   document.membersForm.city.focus();
			   return false;
		  }
		  //State
		  var state = trim(document.membersForm.state.value);
		  if(state.length == 0)
		  {
		       alert("Please enter state.");
			   document.membersForm.state.focus();
			   return false;
		  }
		  if(isNotAlphabets(state))
		  {
		       alert("Please enter only Alphabets in State.");
			   document.membersForm.state.focus();
			   return false;
		  }
		  if(isNotID(state))
		  {
		       alert("Invalid characters in State.");
			   document.membersForm.state.focus();
			   return false;
		  }
		  
		  //zip
		  var zip = trim(document.membersForm.zipcode.value);
		   if(zip.length == 0)
		  {
		       alert("Please enter Zip Code.");
			   document.membersForm.zipcode.focus();
			   return false;
		  }
		  if(isNotNumeric(zip))
		  {
		       alert("Invalid characters in Zip Code.");
			   document.membersForm.zipcode.focus();
			   return false;
		  }
		  
		  //Country		  		  
		  var country = document.membersForm.country.value;
		  if(country.length == 0)
		  {
		       alert("Please enter country");
			   document.membersForm.country.focus();
			   return false;
		  }
		  if(isNotAlphabets(country))
		  {
		       alert("Please enter only Alphabets in country.");
			   document.membersForm.country.focus();
			   return false;
		  }
		   //photo
		  var photo = trim(document.membersForm.photo.value);
		  if(photo == "" )
		  {
		       alert("Please browse photo.");
			   document.membersForm.photo.focus();
			   return false;
		  }	  
		  
		 
		  
		  return true;
	 }
	 
	 //Profile form
function checkmyaccount(membersForm)
{
		
		 
	//First Name
		  
		  var fname = trim(document.membersForm.first_name.value);
		  if(fname.length == 0)
		  {
		       alert("Please enter first name");
			   document.membersForm.first_name.focus();
			   return false;
		  }
		  
		  if(isNotID(fname))
		  {
		       alert("Invalid Characters in first name");
			   document.membersForm.first_name.focus();
			   return false;		  
		  }
		  if(isNotAlphabets(fname))
		  {
		       alert("Please enter only Alphabets in first name field.");
			   document.membersForm.first_name.focus();
			   return false;		  
		  }
		  //Last Name
		  var lname = trim(document.membersForm.last_name.value);
		  if(lname.length == 0)
		  {
		       alert("Please enter last name");
			   document.membersForm.last_name.focus();
			   return false;
		  }
		  
		  if(isNotID(lname))
		  {
		       alert("Invalid Characters in last name");
			   document.membersForm.last_name.focus();
			   return false;		  
		  }
		  if(isNotAlphabets(lname))
		  {
		       alert("Please enter only Alphabets in last name field.");
			   document.membersForm.last_name.focus();
			   return false;		  
		  }
		  	  		  		  
		   //Age
		  var age = trim(document.membersForm.age.value);
		  if(age.length == 0)
		  {
		       alert("Please enter age");
			   document.membersForm.age.focus();
			   return false;
		  }
		   //Email		  
		  var email_1 = trim(document.membersForm.email.value);
		  if(email_1.length == 0)
		  {
		       alert("Please enter email");
			   document.membersForm.email.focus();
			   return false;
		  }
		  if(isValidEmail(email_1) == 0)
		  {
			   
			   document.membersForm.email.focus();
			   return false;		  
		  }	
		  //Address
		  var address_1 = trim(document.membersForm.address.value);
		  if(address_1.length == 0)
		  {
		       alert("Please enter address");
			   document.membersForm.address.focus();
			   return false;
		  }
		  //city
		  var city = trim(document.membersForm.city.value);
		  if(city.length == 0)
		  {
		       alert("Please enter city.");
			   document.membersForm.city.focus();
			   return false;
		  }
		  if(isNotAlphabets(city))
		  {
		       alert("Please enter only Alphabets in City.");
			   document.membersForm.city.focus();
			   return false;
		  }
		  if(isNotID(city))
		  {
		       alert("Invalid characters in City.");
			   document.membersForm.city.focus();
			   return false;
		  }
		  //State
		  var state = trim(document.membersForm.state.value);
		  if(state.length == 0)
		  {
		       alert("Please enter state.");
			   document.membersForm.state.focus();
			   return false;
		  }
		  if(isNotAlphabets(state))
		  {
		       alert("Please enter only Alphabets in State.");
			   document.membersForm.state.focus();
			   return false;
		  }
		  if(isNotID(state))
		  {
		       alert("Invalid characters in State.");
			   document.membersForm.state.focus();
			   return false;
		  }
		  
		  //zip
		  var zip = trim(document.membersForm.zipcode.value);
		   if(zip.length == 0)
		  {
		       alert("Please enter Zip Code.");
			   document.membersForm.zipcode.focus();
			   return false;
		  }
		  if(isNotNumeric(zip))
		  {
		       alert("Invalid characters in Zip Code.");
			   document.membersForm.zipcode.focus();
			   return false;
		  }
		  
		  //Country		  		  
		  var country = document.membersForm.country.value;
		  if(country.length == 0)
		  {
		       alert("Please enter country");
			   document.membersForm.country.focus();
			   return false;
		  }
		  if(isNotAlphabets(country))
		  {
		       alert("Please enter only Alphabets in country.");
			   document.membersForm.country.focus();
			   return false;
		  }
		  
		  return true;
	 }
//Check file ext for image only is it valid file or not Giyas May 08, 2008 
function checkfiletype(f)
{
	var temp = new Array();
	temp = f.value.split('.');
	l=temp.length-1;
	temp[l]=temp[l].toLowerCase();
	if(temp[l]=="jpg"||temp[l]=="jpeg"||temp[l]=="png"||temp[l]=="gif")
	{
		return true;
	}
	else
	{
		alert("Select JPG, PNG and GIF files only.");
		f.value='';
		return false;
	}
}

//for key press
function onkey(e)
{
	if( !e ) {
		if( window.event ) {
			//DOM
			e = window.event;
		} else {
			//TOTAL FAILURE, WE HAVE NO WAY OF REFERENCING THE EVENT
			return;
		}
	}
	//13 for Enter and 9 for Tab key
	if(e.keyCode != 13 && e.keyCode != 9)
	{
		alert("Please select file By Browse Button.");
		return false;
	}
}