
////////////////////// LOGIN

function loginVal(t){
	if(isEmpty(document.getElementById("email"), "login",t)){
		if(isEmpty(document.getElementById("pwd"), "pwd",t)){
			if(isEmpty(document.getElementById("capcha"), "code",t)){
				if(isChecked(document.getElementById("agree"), "tou",t)){
					document.getElementById("loginform").submit();
				}
			}
		}
	}
	return false;
}
////////////////////// RATING

function rateVal(t){
	if(isGroupChecked(document.getElementsByName("serv[]"), "serv",t)){
		if(isGroupChecked(document.getElementsByName("prod[]"), "prod",t)){
			if(isChecked(document.getElementById("agree"), "cond",t)){
				document.getElementById("clientvote").submit();
			}
		}
	}
	return false;
}


////////////////////// SEND TO FRIEND

function sendfriendVal(t){
	if(isEmail(document.getElementById("email"), "mail",t)){
		if(isEmpty(document.getElementById("capcha"), "code",t)){
			document.getElementById('sendfriend').submit();
		}
	}
	return false;
}


////////////////////// SEND EMAIL

function sendemailVal(t){
	if(isEmpty(document.getElementById("subj"), "subj",t)){
		if(isEmpty(document.getElementById("msg"), "msg",t)){
			if(isEmpty(document.getElementById("capcha"), "code",t)){
				document.getElementById('sendemail').submit();
			}
		}
	}
	return false;
}


////////////////////// CONTACT US

function contactusVal(t){
	if(isEmpty(document.getElementById("name"), "name",t)){
		if(isEmail(document.getElementById("email"), "mail",t)){
			if(isEmpty(document.getElementById("reason"), "reason",t)){
				if(isEmpty(document.getElementById("msg"), "txt",t)){
					if(isEmpty(document.getElementById("capcha"), "code",t)){
						document.getElementById('contactus').submit();
					}
				}
			}
		}
	}
	return false;
}

////////////////////// MAIN TEXT

function chkMainTxt(full){
	if(getit('dscr', 'first')){
		if(full == 1){
			if(getit('dscr2', 'second')){
				if(getit('dscr3', "third")){	
					document.getElementById('savfrm').submit();
				}
			}
		} else document.getElementById('savfrm').submit();
	}
	return false;
}

////////////////////// SEARCH

function chkSearch(t){
	var cn = document.getElementById('cn').options[document.getElementById('cn').selectedIndex].value;
	if(cn > 0) 
		submitSearch();	
	else if(isMinTwo(document.getElementById("kw"), "mintwo",t)){
		submitSearch();
	}
	return false;
}			

////////////////////// REGISTER

function regprivateVal(t){
	if(isEmpty(document.getElementById("name"), "name",t)){
		if(isEmpty(document.getElementById("sname"), "lname",t)){
			if(isEmpty(document.getElementById("city"), "city",t)){
				if(isDdSelected(document.getElementById("country"), "cntry",t)){
					if(isEmpty(document.getElementById("phone"), "ph",t)){
//						if(isValidPhoneNumber(document.getElementById("phone"), "ph",t)){
							if(isEmail(document.getElementById("email"), "mail",t)){
								if(valExists(document.getElementById("emailchk"), document.getElementById("email"), "isreg",t)){
									if(isEmpty(document.getElementById("pwd"), "pwd",t)){
										if(is4long(document.getElementById("pwd"), "pwdlong",t)){
											if(isEmpty(document.getElementById("pwdc"), "pwd2",t)){
												if(isEqual(document.getElementById('pwd'), document.getElementById('pwdc'), "match",t)){
													if(isChecked(document.getElementById("agree"), "both",t)){
														if(isEmpty(document.getElementById("capcha"), "code",t)){
														//return true;
															document.getElementById('regprivate').submit();
													
														}
													}
												}
											}
										}
									}
								}
							}
//						}
					}
				}
			}
		}
	}
	return false;
}

function regclientVal(t){
	if(isEmpty(document.getElementById("cname"), "cname",t)){
		if(isDdSelected(document.getElementById("cat"), "cat",t)){
			if(isEmpty(document.getElementById("addrcl"), "adr",t)){
				if(isEmpty(document.getElementById("citycl"), "city",t)){
					if(isEmpty(document.getElementById("zipcl"), "zip",t)){
						if(isDdSelected(document.getElementById("countrycl"), "cntry",t)){
							if(isEmpty(document.getElementById("phonecl"), "ph",t)){
//								if(isValidPhoneNumber(document.getElementById("phonecl"), "ph",t)){
									if(isEmail(document.getElementById("emailcl"), "mail",t)){
										if(valExists(document.getElementById("emailchk"), document.getElementById("emailcl"), "isreg",t)){
											if(isEmpty(document.getElementById("namecl"), "name",t)){
												if(isEmpty(document.getElementById("snamecl"), "lname",t)){
													if(isEmpty(document.getElementById("pwdcl"), "pwd",t)){
														if(is4long(document.getElementById("pwdcl"), "pwdlong",t)){
															if(isEmpty(document.getElementById("pwdccl"), "pwd2",t)){
																if(isEqual(document.getElementById('pwdcl'), document.getElementById('pwdccl'), "match",t)){
																	if(isChecked(document.getElementById("agreecl"), "both",t)){
																		if(isEmpty(document.getElementById("capchacl"), "code",t)){
																			//return true;
																			document.getElementById('regclient').submit();
																		}
																	}
																}
															}
														}
													}
												}
											}
										}
									}
//								}
							}
						}
					}
				}
			}
		}
	}
	return false;
}

function upclientVal(t){
	if(isEmpty(document.getElementById("cname"), "cname",t)){
		if(isDdSelected(document.getElementById("cat"), "cat",t)){
			if(isEmpty(document.getElementById("addrcl"), "adr",t)){
				if(isEmpty(document.getElementById("citycl"), "city",t)){
					if(isEmpty(document.getElementById("zipcl"), "zip",t)){
						if(isDdSelected(document.getElementById("country"), "cntry",t)){
							if(isEmpty(document.getElementById("phonecl"), "ph",t)){
//								if(isValidPhoneNumber(document.getElementById("phonecl"), "ph",t)){
									if(isEmpty(document.getElementById("namecl"), "name",t)){
										if(isEmpty(document.getElementById("snamecl"), "lname",t)){
											if(isChecked(document.getElementById("agreecl"), "both",t)){
												if(isEmpty(document.getElementById("capchacl"), "code",t)){
													//return true;
													document.getElementById('upclient').submit();
												}
											}
										}
									}
								}
//							}
						}
					}
				}
			}
		}
	}
	return false;
}

function editprivateVal(t){
	if(isEmpty(document.getElementById("name"), "name",t)){
		if(isEmpty(document.getElementById("sname"), "lname",t)){
			if(isEmpty(document.getElementById("city"), "city",t)){
				if(isEmpty(document.getElementById("phone"), "ph",t)){
//					if(isValidPhoneNumber(document.getElementById("phone"), "ph",t)){
						if(isChecked(document.getElementById("agree"), "both",t)){
							//return true;
							document.getElementById('editprivate').submit();
						}
//					}
				}
			}
		}
	}
	return false;
}

function clientupdateVal(t){
	if(isEmpty(document.getElementById("cname"), "cname",t)){
		if(isEmpty(document.getElementById("addrcl"), "adr",t)){
			if(isEmpty(document.getElementById("citycl"), "city",t)){
				if(isEmpty(document.getElementById("zipcl"), "zip",t)){
					if(isEmpty(document.getElementById("phonecl"), "ph",t)){
//						if(isValidPhoneNumber(document.getElementById("phonecl"), "ph",t)){
							if(isChecked(document.getElementById("agree"), "both",t)){
								//return true;
								document.getElementById('editclient').submit();
							}
//						}
					}
				}
			}
		}
	}
	return false;
}

function editclientVal(t){
	if(isEmpty(document.getElementById("namecl"), "name",t)){
		if(isEmpty(document.getElementById("snamecl"), "lname",t)){
			if(isChecked(document.getElementById("agree"), "both",t)){
				if(isEmail(document.getElementById("email"), "mail",t)){
				//return true;
					document.getElementById('editclient').submit();
				}
			}
		}
	}
	return false;
}

function editemailVal(t){
	if(isEmail(document.getElementById("email"), "mail",t)){
		if(valExists(document.getElementById("emailchk"), document.getElementById("email"), "isreg",t)){
			if(isEmail(document.getElementById("emailc"), "cmail",t)){
				if(isEqual(document.getElementById('email'), document.getElementById('emailc'), "ematch",t)){
					if(isChecked(document.getElementById("agree"), "both",t)){
						//return true;
						document.getElementById('editemail').submit();
					}
				}
			}
		}
	}
	return false;
}

function editpwdVal(t){
	if(isEmpty(document.getElementById("pwdcur"), "pwd",t)){
		if(isEmpty(document.getElementById("pwd"), "newpwd",t)){
			if(is4long(document.getElementById("pwd"), "pwdlong",t)){
				if(isEmpty(document.getElementById("pwdc"), "newpwd2",t)){
					if(isEqual(document.getElementById("pwd"), document.getElementById("pwdc"), "nmatch",t)){
						if(isChecked(document.getElementById("agree"), "both",t)){
							document.getElementById("editpwd").submit();
						}
					}
				}
			}
		}
	}
	return false;
}


////////////////////// SUBMIT LINK

function linksubmitVal(t){
	if(isEmpty(document.getElementById("wwwname"), "wwwname",t)){
		if(isEmpty(document.getElementById("webaddress"), "webaddress",t)){
			if(isEmpty(document.getElementById("reciprocal"), "reciprocal",t)){
				if(isEmpty(document.getElementById("name"), "name",t)){
					if(isEmpty(document.getElementById("sname"), "lname",t)){
						if(isEmail(document.getElementById("email"), "mail",t)){
							if(isEmpty(document.getElementById("msg"), "txt30",t)){
								if(lessthan30long(document.getElementById("msg"), "max30",t)){
									if(isEmpty(document.getElementById("capcha"), "code",t)){
										document.getElementById('linksubmit').submit();
									}
								}
							}
						}
					}
				}
			}
		}
	}
	return false;
}

////////////////////////////////////////////////////// FORM VALIDATION GLOBAL

function stripHtml(str){
	var reTag = /<(?:.|\s)*?>/g;
    return str.replace(reTag, "");
}

function valExists(elemchk, elem, helperMsg,t){
	if(elemchk.value == 1){
		getError(helperMsg,t);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function isEmpty(elem, helperMsg,t){
	if(elem.value.length == 0){
		getError(helperMsg,t);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function isMinTwo(elem, helperMsg,t){
	var cleared = elem.value.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
	if(cleared.length < 2){
		getError(helperMsg,t);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function isDdSelected(elem, helperMsg,t){
	if(elem.selectedIndex == 0){
		getError(helperMsg,t);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function isEmptyChoice(elem, helperMsg, choice,t){
	if (choice == true){
		if (elem.value.length == 0){
			getError(helperMsg,t);
			elem.focus();
			return false;
		}else{
			return true;
		}
	}else{
		return true;
	}
}

function isChecked(elem, helperMsg,t){
	if(elem.checked == false){
		getError(helperMsg,t);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function isGroupChecked(groupname, helperMsg,t){
    var cnt = -1;
    for (var i=groupname.length-1; i > -1; i--) {
        if (groupname[i].checked) {cnt = i; i = -1;}
    }
    if (cnt > -1){
    	return true;
    }else{
    	getError(helperMsg,t);
    	return false;
    }
}

function isEqual(elem, elem2, helperMsg,t){
	if(elem.value != elem2.value){
		getError(helperMsg,t);
		elem.value = '';
		elem2.value = '';
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function isEmail(elem, helperMsg,t){
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
	if(elem.value.match(emailExp)){
		return true;
	}else{
		getError(helperMsg,t);
		elem.focus();
		return false;
	}
}

function lessthan30long(elem, helperMsg,t){
	var lencnt = elem.value.length;
	if(lencnt > 30){
		alert('Please enter no more than 30 characters in description field!\nYou have entered ' + lencnt);
//		getErrorVal(helperMsg,t,lencnt);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function is8long(elem, helperMsg,t){
	if(elem.value.length != 0 && elem.value.length < 8){
		getError(helperMsg,t);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function is4long(elem, helperMsg,t){
	if(elem.value.length != 0 && elem.value.length < 4){
		getError(helperMsg,t);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function isNumeric(elem, helperMsg,t){
	var numericExpression = /^([\(]{1}[0-9]{3}[\)]{1}[\.| |\-]{0,1}|^[0-9]{3}[\.|\-| ]?)?[0-9]{3}(\.|\-| )?[0-9]{4}$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		getError(helperMsg,t);
		elem.focus();
		return false;
	}
}

function isFloat(elem, helperMsg,t){
	var numericExpression = /^[0-9.]+$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		getError(helperMsg,t);
		elem.focus();
		return false;
	}
}

function buyVal(t) {
	if(isChecked(document.getElementById("agree"), "submrules",t)){
		document.getElementById("buyform").submit();
	}
	return false;

}
///////////
function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    return true;
}
function trim(s)
{   var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (c != " ") returnString += c;
    }
    return returnString;
}
function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}
function isValidPhoneNumber(elem, helperMsg,t){
	var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- ";
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	var minDigitsInIPhoneNumber = 5;
	strPhone = trim(elem.value);
	s=stripCharsInBag(strPhone,validWorldPhoneChars);
	if (isInteger(s) && s.length >= minDigitsInIPhoneNumber)
		return true;
	else{
		getError(helperMsg,t);
		elem.focus();
		return false;
	}
}

function counterUpdate(opt_countedTextBox, opt_countBody, opt_maxSize) {
        var countedTextBox = opt_countedTextBox ? opt_countedTextBox : "counttxt";
        var countBody = opt_countBody ? opt_countBody : "countBody";
        var maxSize = opt_maxSize ? opt_maxSize : 1024;

        var field = document.getElementById(countedTextBox);

        if (field && field.value.length >= maxSize) {
                field.value = field.value.substring(0, maxSize);
        }
        var txtField = document.getElementById(countBody);
                if (txtField) { 
                txtField.innerHTML = field.value.length;
        }
}

function submitSearch() {
		var str = $('#srchfrm').serialize();
		var path = '/inc/get.php';
		$.post(path, str,
			function(data){
				newpath = data;
				document.location.href=data;
			});
}

