var reNum = /^[0-9]*$/i; // Regex number only

function isLegal(str, pattern) {
	// Returns TRUE if str match the given pattern
	var re = pattern;
	return re.test(str);
}

function isEmail(str)
{
  var supported = 0;
  if (window.RegExp) {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported) 
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}

// Removes leading whitespaces
function LTrim( value ) {
	var re = /\s*((\S+\s*)*)/;
	return value.replace(re, "$1");
}

// Removes ending whitespaces
function RTrim( value ) {
	var re = /((\s*\S+)*)\s*/;
	return value.replace(re, "$1");
}

// Removes leading and ending whitespaces
function trim( value ) {
	return LTrim(RTrim(value));
}

function checkinput(form)
{
	if(trim(form.title.value).length==0) {
		hboxAlert(form.title);
		return false ;
	} else if (form.title.value=="Other" && trim(form.title.value).length==0) {
		hboxAlert(form.title);
		return false;
	}
	if(trim(form.firstname.value).length==0) {
		hboxAlert(form.firstname);
		return false ;
	}
	if(trim(form.lastname.value).length==0) {
		hboxAlert(form.lastname);
		return false ;
	}
	if(trim(form.email.value).length==0) {
		hboxAlert(form.email);
		return false ;
	}else{
		if (!isEmail(form.email.value)) {
			hboxAlert(form.email);
			return false ;	 
		}
	}
	if(trim(form.postcode.value).length==0) {
		hboxAlert(form.postcode);
		return false ;
	} else if (trim(form.postcode.value).length>0 && !isLegal(trim(form.postcode.value), reNum)) {
		hboxAlert(form.postcode);
		return false;
	}
	if(trim(form.location.value).length==0) {
		hboxAlert(form.location);
		return false ;
	}
	if(trim(form.enquiry_type.value).length==0) {
		hboxAlert(form.enquiry_type);
		return false ;
	}
	if(form.comment.value.length==0) {
		hboxAlert(form.comment);
		return false ;
	}
	form.submit();
}

function resetForm(obj) {
	if (confirm("All data will be lost, are you sure?"))
		if (obj)
			obj.reset();
}