var regex_phone = /^(([(]?([2-9]\d{2})[)]?|([2-9]\d{2}))|)(-?| ?)[2-9]\d{2}[- ]?\d{4}/i;
var regex_email = /^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i;

$(function() {
	$(".form-error").css("visibility","hidden");
});

function validate_form(entries) {
	var valid = true;
	for(var field in entries) {
		var value = $(field).val();
		var type = entries[field];
		if(type == "phone") {
			if(!value.match(regex_phone)) {
				fieldError(field);
				valid = false;
			} else {
				fieldUnError(field);		
			}
		} else if(type == "email") {
			if(!value.match(regex_email)) {
				fieldError(field);
				valid = false;
			} else {
				fieldUnError(field);		
			}			
		} else if(type == "exists") {
			if(value == "") {
				fieldError(field);
				valid = false;
			} else {
				fieldUnError(field);		
			}			
		}
	}
	return valid;
}

function fieldError(field) {
		$(field).css("border-color","red").css("background-color","#FFAA5F");
		$("#error"+field.replace("#","-").replace(".","-")).css("visibility","visible");
}

function fieldUnError(field) {
		$(field).css("border-color","black").css("background-color","white");
		$("#error"+field.replace("#","-").replace(".","-")).css("visibility","hidden");		
}