// Function donot allows space and  special chars(only alphabets)
function validateName(fieldvalue)
{
	
	var result = true;
	var string = fieldvalue;
	var stringlen = fieldvalue.length;
	var iChars = ".!\\^-+=*,|_~?/\":<>[]{}`\';()@&$#% 0123456789";
	for (var i = 0; i < stringlen; i++)
	{
		if (iChars.indexOf(string.charAt(i)) != -1)
		result = false;
	}

	if (string.charAt('0') == ' ')
	{
		result = false;
	}
	
	return result;
}

// Function allows space but not  special chars(only alphabets with space)
function validateNaming(fieldvalue)
{
	var result = true;
	var string = fieldvalue;
	var stringlen = fieldvalue.length;
	var iChars = ".!\\^-+=*,|_~?/\":<>[]{}`\';()@&$#%0123456789";
	for (var i = 0; i < stringlen; i++)
	{
		if (iChars.indexOf(string.charAt(i)) != -1)
		result = false;
	}

	if (string.charAt('0') == ' ')
	{
		result = false;
	}
	return result;
}

// Function allows space but not  special chars(only alphabets with space)
function validateAlphaNumbers(fieldvalue)
{
	var result = true;
	var string = fieldvalue;
	var stringlen = fieldvalue.length;
	var iChars = ".!\\^-+=*,|_~?/\":<>[]{}`\';()@&$#%";
	for (var i = 0; i < stringlen; i++)
	{
		if (iChars.indexOf(string.charAt(i)) != -1)
		result = false;
	}

	if (string.charAt('0') == ' ')
	{
		result = false;
	}
	return result;
}

//Function to check valid email 
function checkEmail(emailStr)
{
	var checkTLD=0,i;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum])$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\\.\\[\\]//";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);

	if (matchArray==null)
	{
		return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];

	for (i=0; i<user.length; i++)
	{
		if (user.charCodeAt(i)>127)
		{
			return false;
		}
	}

	for (i=0; i<domain.length; i++)
	{
		if (domain.charCodeAt(i)>127)
		{
			return false;
		}
	}

	if (user.match(userPat)==null)
	{
		return false;
	}

	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	
	for (i=0;i<len;i++)
	{
		if (domArr[i].search(atomPat)==-1)
		{
			return false;
		}
	}

	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1)
	{
		var dis=domArr[domArr.length-1].length;
		return false;
	}

	if (len<2)
	{
		return false;
	}
	return true;
}

//Function allows only number from 0-9 
	function validNum(fieldvalue)
	{
		var result = true;
		var string = fieldvalue;
		var stringlen = fieldvalue.length;
		var iChars = "0123456789";
		for (var i = 0; i < stringlen; i++)
		{
			var a =iChars.indexOf(string.charAt(i));
			if (a == -1)
				result = false;
		}

	return result;
	}
/* function to validate user login */
function validate_userlogin(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	
	if(document.getElementById('UserUsername1').value==''){
		document.getElementById('UserUsername1').focus();
		alert(ErrMsg[0]);
		return false;
	}
	if(document.getElementById('UserPassword1').value==''){
		document.getElementById('UserPassword1').focus();
		alert(ErrMsg[1]);
		return false;
	}
	if(document.getElementById('UserPassword1').value.length<6){
		document.getElementById('UserPassword1').focus();
		alert(ErrMsg[2]);
		return false;
	}
	return true;
}

/* function to validate user registration process */
function validate_userregister(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	
	if(document.getElementById('UserFirstname').value==''){
		document.getElementById('UserFirstname').focus();
		alert(ErrMsg[0]);
		return false;
	}
	if(validateName(document.getElementById('UserFirstname').value)==false){
		document.getElementById('UserFirstname').focus();
		alert(ErrMsg[1]);
		return false;
	}
	if(document.getElementById('UserLastname').value==''){
		document.getElementById('UserLastname').focus();
		alert(ErrMsg[2]);
		return false;
	}
	if(validateName(document.getElementById('UserLastname').value)==false){
		document.getElementById('UserLastname').focus();
		alert(ErrMsg[3]);
		return false;
	}
	if(document.getElementById('UserEmailid').value==''){
		document.getElementById('UserEmailid').focus();
		alert(ErrMsg[4]);
		return false;
	}
	if(checkEmail(document.getElementById('UserEmailid').value)==false){
		document.getElementById('UserEmailid').focus();
		alert('Invalid e-mail address. Please enter an email address in the format – name@domain.com');
		return false;
	}
	if(document.getElementById('UserEmailid').value!=document.getElementById('UserCemailid').value){
		document.getElementById('UserCemailid').focus();
		alert(ErrMsg[6]);
		return false;
	}
	/*if(document.getElementById('UserAddress1').value==''){
		document.getElementById('UserAddress1').focus();
		alert(ErrMsg[8]);
		return false;
	}
	if(document.getElementById('UserAddress2').value==''){
		document.getElementById('UserAddress2').focus();
		alert(ErrMsg[8]);
		return false;
	}*/
	if(document.getElementById('UserCity').value==''){
		document.getElementById('UserCity').focus();
		alert(ErrMsg[9]);
		return false;
	}
	/*if(validateNaming(document.getElementById('UserCity').value)==false){
		document.getElementById('UserCity').focus();
		alert(ErrMsg[10]);
		return false;
	}*/
	if(document.getElementById('UserPostcode').value==''){
		document.getElementById('UserPostcode').focus();
		alert(ErrMsg[11]);
		return false;
	}
	if(validateAlphaNumbers(document.getElementById('UserPostcode').value)==false){
		document.getElementById('UserPostcode').focus();
		alert(ErrMsg[12]);
		return false;
	}
	if(document.getElementById('UserUsername').value==''){
		document.getElementById('UserUsername').focus();
		alert(ErrMsg[13]);
		return false;
	}
	if(document.getElementById('UserCountryId').value=='0'){
		document.getElementById('UserCountryId').focus();
		alert(ErrMsg[14]);
		return false;
	}
	if(document.getElementById('UserPassword').value==''){
		document.getElementById('UserPassword').focus();
		alert(ErrMsg[15]);
		return false;
	}
	if(document.getElementById('UserPassword').value.length<6){
		document.getElementById('UserPassword').focus();
		alert(ErrMsg[16]);
		return false;
	}
	if(document.getElementById('UserCpassword').value==''){
		document.getElementById('UserCpassword').focus();
		alert(ErrMsg[17]);
		return false;
	}
	if(document.getElementById('UserPassword').value!=document.getElementById('UserCpassword').value){
		document.getElementById('UserCpassword').focus();
		alert(ErrMsg[17]);
		return false;
	}
	if(document.getElementById('UserMatchcode').value==''){
		document.getElementById('UserMatchcode').focus();
		alert(ErrMsg[20]);
		return false;
	}
	if(document.getElementById('UserDisclaimer').checked==false){
		//document.getElementById('UserDisclaimer').focus();
		alert(ErrMsg[19]);
		return false;
	}
	return true;
}

function validate_forget_password(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	if(document.getElementById('UserUsername').value=='' && document.getElementById('UserEmailid').value==''){
		document.getElementById('UserUsername').focus();
		alert(ErrMsg[0]);
		return false;
	}
	if(document.getElementById('UserEmailid').value!='' && checkEmail(document.getElementById('UserEmailid').value)==false){
		document.getElementById('UserEmailid').focus();
		alert('Invalid e-mail address. Please enter an email address in the format – name@domain.com');
		return false;
	}
	return true;
}

function validate_userprofile (errMessage) {
	var ErrMsg=errMessage.split('<br>');
	if(document.getElementById('UserFirstname').value==''){
		document.getElementById('UserFirstname').focus();
		alert(ErrMsg[0]);
		return false;
	}
	if(document.getElementById('UserLastname').value==''){
		document.getElementById('UserLastname').focus();
		alert(ErrMsg[1]);
		return false;
	}
	if(document.getElementById('UserEmailid').value==''){
		document.getElementById('UserEmailid').focus();
		alert(ErrMsg[2]);
		return false;
	}
	if(checkEmail(document.getElementById('UserEmailid').value)==false){
		document.getElementById('UserEmailid').focus();
		alert('Invalid e-mail address. Please enter an email address in the format – name@domain.com');
		return false;
	}
	
	/*if(document.getElementById('UserConfemailid').value==''){
		document.getElementById('UserConfemailid').focus();
		alert(ErrMsg[3]);
		return false;
	}*/
	if(document.getElementById('UserEmailid').value!=document.getElementById('UserConfemailid').value){
		document.getElementById('UserConfemailid').focus();
		alert(ErrMsg[8]);
		return false;
	}
	if((document.getElementById('UserPassword').value!='') || (document.getElementById('UserConfpassword').value!=''))
	{
		if(document.getElementById('UserPassword').value==''){
			document.getElementById('UserPassword').focus();
			alert(ErrMsg[5]);
			return false;
		}
		if(document.getElementById('UserPassword').value.length<6){
			document.getElementById('UserPassword').focus();
			alert(ErrMsg[10]);
			return false;
		}
		/*if(document.getElementById('UserConfpassword').value==''){
			document.getElementById('UserConfpassword').focus();
			alert(ErrMsg[6]);
			return false;
		}*/
		if(document.getElementById('UserPassword').value!=document.getElementById('UserConfpassword').value){
			document.getElementById('UserConfpassword').focus();
			alert(ErrMsg[7]);
			return false;
		}
		return true;
	}

}

function validate_requestBusiness (errMessage) {
	var ErrMsg=errMessage.split('<br>');
	if(document.getElementById('BusinessrequestBusinessname').value=='')
	{
		document.getElementById('BusinessrequestBusinessname').focus();
		alert(ErrMsg[0]);
		return false;
	}
	return true;
}

function deleteConfirm() {
	var conf = confirm("Are you sure to delete?");
	return conf;
}

function validate_businessprofile(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	/*if(document.getElementById('BusinessBusinessurl').value==''){
		document.getElementById('BusinessBusinessurl').focus();
		alert(ErrMsg[0]);
		return false;
	}*/
	if(document.getElementById('BusinessPassword').value==''){
		document.getElementById('BusinessPassword').focus();
		alert(ErrMsg[1]);
		return false;
	}
	if(document.getElementById('BusinessPassword').value.length<6){
		document.getElementById('BusinessPassword').focus();
		alert(ErrMsg[2]);
		return false;
	}
	if(document.getElementById('BusinessPassword').value!=document.getElementById('BusinessConfpassword').value){
		document.getElementById('BusinessConfpassword').focus();
		alert(ErrMsg[3]);
		return false;
	}
	return true;
}

function validate_contactus(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	if(document.getElementById('UserName').value==''){
		document.getElementById('UserName').focus();
		alert(ErrMsg[0]);
		return false;
	}
	if(document.getElementById('UserEmail').value==''){
		document.getElementById('UserEmail').focus();
		alert(ErrMsg[1]);
		return false;
	}
	if(checkEmail(document.getElementById('UserEmail').value)==false){
		document.getElementById('UserEmail').focus();
		alert(ErrMsg[2]);
		return false;
	}
	if(document.getElementById('UserComments').value==''){
		document.getElementById('UserComments').focus();
		alert(ErrMsg[3]);
		return false;
	}
	return true;	
}

//function to update subcategory select box
/*function select_subcategories()
{
	var allChecked=null;
	var elementno = document.getElementById('UserParentId').length;
	var elementChk = document.getElementsByName('data[User][parent_id][]');
	
	for(i=0; i<elementno; i++)
	{
		alert(elementChk.options[i].selected);
		if(elementChk[i].options.selected==true)
		{
			if(allChecked==null)
				allChecked=elementChk[i].value;
			else
				allChecked= allChecked+","+elementChk[i].value;
		}
	}
	alert(allChecked);
}*/

function select_subcategories(name, mode ) {
	var allChecked=null;
	select	= document.getElementById("UserParentId");
	total = select.options.length;
	
	for( i = 0; i < total; i++ ) 
	{
		if(select.options[i].selected)
		{
			if(select.options[i].value !='0')
			{
				if(allChecked==null)
					allChecked=select.options[i].value;
				else
					allChecked= allChecked+","+select.options[i].value;
			}
		}
	}
	//alert(mode);return false;
	if(allChecked!=null)
	{	
		if(mode=='0')
		{
			new Ajax.Updater('subCategories','../businesses/updatesubcategories/'+allChecked,{asynchronous:true, evalScripts:true});
		}
		else
		{
			
			new Ajax.Updater('subCategories','../../businesses/updatesubcategories/'+allChecked,{asynchronous:true, evalScripts:true});
		}
	}
	
}

function select_types(feedbackNature) {

	new Ajax.Updater('feedbackTypes','../../feedbacks/updatetypes/'+feedbackNature,{asynchronous:true, evalScripts:true});
}

function validate_provideFeedback(errMsg) {
	var ErrMsg=errMsg.split('<br>');
	/*if(document.getElementById('FeedbackMonth').value==0 || document.getElementById('FeedbackYear').value==0)
	{
		alert(ErrMsg[0]);
		document.getElementById('FeedbackMonth').focus();
		return false;
	}
	// added for feedback nature Thumbsup/Thumbsdown
	if(document.getElementById('FeedbackFeedbacknature1').checked==false && document.getElementById('FeedbackFeedbacknature2').checked==false)
	{
		alert(ErrMsg[4]);
		document.getElementById('FeedbackFeedbacknature1').focus();
		return false;
	}
	
	var inputs = document.getElementsByTagName('input');
	var j = 0;
	for(var i=0;i<inputs.length;i++)
	{
		if(inputs[i].getAttribute('type')=="checkbox" && inputs[i].checked==true)
		{
			j++;
		}
	}
	if(j==0)
	{
		alert(ErrMsg[1]);
		return false;
	}*/
	/*
	if(document.getElementById('FeedbackFeedbacktitle').value.length==0)
	{
		alert(ErrMsg[2]);
		document.getElementById('FeedbackFeedbacktitle').focus();
		return false;
	}
	*/
	if(document.getElementById('FeedbackFeedbackdetail').value.length==0)
	{
		alert(ErrMsg[3]);
		document.getElementById('FeedbackFeedbackdetail').focus();
		return false;
	}
	
	return true;

}

function validate_bannedwords()
{
	
	if(document.getElementById('WordfilterWords').value=='')
	{
		alert('Error: Please enter banned words.');
		return false;
	}
	return true;
}

function validate_addcategory(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	if(document.getElementById('BusinesscategoryCategoryname').value==''){
		document.getElementById('BusinesscategoryCategoryname').focus();
		alert(ErrMsg[0]);
		return false;
	}
	return true;
}

function validate_userlisting(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	var regfrom = document.getElementById('UserRegistrationfrom').value;
	var regto = document.getElementById('UserRegistrationto').value;
	var rfrom=regfrom.replace(/-/g,'');
	var rto=regto.replace(/-/g,'');
	if(rto < rfrom)
	{
		alert(ErrMsg[3]);
		return false;
	}

	var loginfrom = document.getElementById('UserLoginfrom').value;
	var loginto = document.getElementById('UserLoginto').value;
	var lfrom=loginfrom.replace(/-/g,'');
	var lto=loginto.replace(/-/g,'');
	if(lto < lfrom)
	{
		alert(ErrMsg[3]);
		return false;
	}
	
	return true;
}

function validate_business(errMessage)
{
	var ErrMsg=errMessage.split('<br>');
	if(document.getElementById('UserParentId').value==''){
		document.getElementById('UserParentId').focus();
		alert(ErrMsg[0]);
		return false;
	}
	if(document.getElementById('UserCategoryId').value=='' || document.getElementById('UserCategoryId').value=='0'){
		document.getElementById('UserCategoryId').focus();
		alert(ErrMsg[1]);
		return false;
	}
	if(document.getElementById('BusinessBusinessname').value==''){
		document.getElementById('BusinessBusinessname').focus();
		alert(ErrMsg[2]);
		return false;
	}
	/*if(document.getElementById('BusinessBusinessemailid').value==''){
		document.getElementById('BusinessBusinessemailid').focus();
		alert(ErrMsg[3]);
		return false;
	}*/
	if(document.getElementById('BusinessBusinessemailid').value!='' && checkEmail(document.getElementById('BusinessBusinessemailid').value)==false){
		document.getElementById('BusinessBusinessemailid').focus();
		alert('Invalid e-mail address. Please enter an email address in the format – name@domain.com');
		return false;
	}
	/*if(document.getElementById('BusinessBusinessurl').value==''){
		document.getElementById('BusinessBusinessurl').focus();
		alert(ErrMsg[4]);
		return false;
	}*/
	if(document.getElementById('BusinessPassword').value==''){
		document.getElementById('BusinessPassword').focus();
		alert(ErrMsg[5]);
		return false;
	}
	if(document.getElementById('BusinessPassword').value.length<6){
		document.getElementById('BusinessPassword').focus();
		alert(ErrMsg[6]);
		return false;
	}
	
	if(document.getElementById('BusinessPassword').value!=document.getElementById('BusinessConfpassword').value){
		document.getElementById('BusinessConfpassword').focus();
		alert(ErrMsg[7]);
		return false;
	}
	return true;
}

function showHide(divId) {

	if(divId=='show')
	{
		document.getElementById('show').style.display='block';
		document.getElementById('hide').style.display='none';
	}

	if(divId=='hide')
	{
		document.getElementById('hide').style.display='block';
		document.getElementById('show').style.display='none';
	}
}