/* validation for QuickRegister Page 
	Created By : Priya
	Created On : 28-07-2010
	Updated On :*/  
$(document).ready(function () 
{
	var formId = $('#free_regis');
	var validmail = $('#email');
	var username = $('#username');
	//info
	var emailInfo = $('#emailInfo');
	var usernameInfo = $('#usernameInfo');
	//keyup
	username.keyup(ValidateName);
	formId.submit(function () 
	{	
		if(validateEmail() & ValidateName())
		{
				return true;
		}
		else
		{
				return false;
		}
	});
	function StringCheck(data)
	{
		var regExp =  /^[a-zA-Z ]+$/;
		var flag = regExp.test(data);
		return flag;
	}
	function CheckString(str)
	{
		var nr = 0;
		var prev = "";
		var repeat = 0;
		var str_length = str.length;
		var flag = false;
		for(var i=0;i<=str_length;i++)
		{
			var c = str.charAt(i);
			if(prev==c) { repeat = repeat + 1; 	}
			else { repeat = 0; }
			prev = c;
			if(repeat>2){ flag = true; }
		}
			return flag;
	}
	function Validate(value)
	{
		var http = value.indexOf("http://");
		var tag = value.indexOf("www.");
		var at = value.indexOf("@");
		var gt = value.indexOf(">");
		var ly = value.indexOf("<");
		var as = value.indexOf("!");
		var ha = value.indexOf("#");
		var dol = value.indexOf("$");
		var per = value.indexOf("%");
		var asr = value.indexOf("^");
		var star = value.indexOf("*");
		var brace = value.indexOf("(");
		var cbrace = value.indexOf(")");
		var colan = value.indexOf(":");
		var comma = value.indexOf(";");
		var smbrace = value.indexOf("{");
		var smbraceclose = value.indexOf("}");
		var openbrace = value.indexOf("[");
		var closebrace = value.indexOf("]");
		var astick = value.indexOf("|");
		var divid = value.indexOf("'\'");
		var plus = value.indexOf("+");
		var equal = value.indexOf("=");
		var minus = value.indexOf("_");
		var ques = value.indexOf("?");
;		var quote_1 = value.indexOf("`");
		var quote_2 = value.indexOf("~");
		if((http == -1) && (tag  == -1) && (at  == -1) && (gt  == -1) && (ly == -1) && (as == -1) && (ha == -1) && (dol == -1) && (per == -1) && (asr == -1) && (star == -1) && (brace == -1) && (cbrace == -1) && (colan == -1)&& (comma == -1) && (smbrace == -1)&& (smbraceclose == -1) && (openbrace == -1) && (closebrace == -1) && (astick == -1) && (divid == -1) && (plus == -1) && (equal == -1) && (minus == -1) && (ques == -1) && (quote_1 == -1) && (quote_2 == -1))
		return true;	
		else 
		return false;	
	}
	function EmailAvailablity(data)
	{
		var sitepath=$("#sitepath").val();
		var dataString = 'action=CheckEmail&email_id='+data;
		var status = $.ajax({type: "GET",url: sitepath+"model/ajaxhandler.class.php", data: dataString, async: false
		}).responseText;
		return status;
	}
	function validateEmail()
	{
		var a = $("#email").val();
		var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
		if(!filter.test(a))
		{
			validmail.addClass("error_field");
			emailInfo.text("Enter your valid email id for login");
			return false;
		}
		else
		{
			if(EmailAvailablity(a)==0)
			{
				validmail.addClass("error_field");
				emailInfo.text("This email id is already registered");
				return false;
			}
			else
			{
				validmail.removeClass("error_field");
				emailInfo.text("");
				return true;
			}
			
		}
	}
	function ValidateName()
	{
		var name_value = username.val().replace(/^\s+|\s+$/g,'') ;	
		if((name_value.length) > 0)
		{
			if(!StringCheck(name_value))
			{
				username.addClass("error_field");
				usernameInfo.text("Special characters are not allowed");
				return false;
			}
			if((name_value.length) < 3)
			{
				username.addClass("error_field");
				usernameInfo.text("Name should be atleast 3 characters");
				return false;
			}

		else
		{
			if(!Validate(name_value))
			{
				username.addClass("error_field");
				usernameInfo.text('Name cannot contain HTML/Link');
				return false;
			}
		else
		{
			if(CheckString(name_value))
				{
					username.addClass('error_field');
					usernameInfo.text("Enter valid name");
					return false;
				}
			else
				{
					username.removeClass('error_field');
					usernameInfo.text("");
					return true;
				}
			}
		}
	}
	else
	{
		username.removeClass('error_field');
		usernameInfo.text("");
		return true;
	}
	}
});
function quick_search()
{
	if(document.QuickSearch.Sex.value=="0")
	{
		alert("Please select the gender");
		document.QuickSearch.Sex.focus();
		return false;
	}
	if(document.QuickSearch.FromAge.value=="")
	{
		alert("Please select the from age");
		document.QuickSearch.FromAge.focus();
		return false;
	}
	if(document.QuickSearch.ToAge.value=="")
	{
		alert("Please select the to age");
		document.QuickSearch.ToAge.focus();
		return false;
	}
	var fromage=document.QuickSearch.FromAge.value;
	var toage=document.QuickSearch.ToAge.value;
	if((document.QuickSearch.FromAge.value) >= (document.QuickSearch.ToAge.value))
	{
		alert("Please select the correct age limit");
		document.QuickSearch.ToAge.focus();
		return false;
	}
}
function EmailAvailablity(data)
{
	var sitepath=$("#sitepath").val();
	var dataString = 'action=CheckMemberId&member_id='+data;
	var status = $.ajax({type: "GET",url: sitepath+"model/ajaxhandler.class.php", data: dataString, async: false
	}).responseText;
	return status;
	//alert(status);
}
function validThis() 
{
	var a = $("#member_id").val();
	var docu=document.MemberIdSearch;
	if((docu.member_id.value=='View by profile ID') || (docu.member_id.value==''))
	{
		alert("Enter the member ID");
		docu.member_id.focus();
		return false;
	}
	if(/^(CF|CM)+(\d){6,}$/.test(docu.member_id.value)==false)
	{
		alert("Enter the valid Member ID");
		docu.member_id.focus();	
		return false;
	}
	if(EmailAvailablity(a)==0)
	{
		alert("Member ID not found in our Database");
		docu.member_id.focus();	
		return false;
	}
}

