var errImg = "img/icons/err.gif";
var okImg  = "img/icons/ok.gif";

function doOk(o) {
	if($('#' + o.attr("id") + '_img').attr("src") == errImg) {
		$('#' + o.attr("id") + '_err').slideUp("slow");
	} 
	
	$('#' + o.attr("id") + '_img').attr("src",okImg);
	o.removeClass(); o.addClass("ok");
}
function doErr(o,e) {
	$('#' + o.attr("id") + '_err').html(e.join("<br>"));

	if($('#' + o.attr("id") + '_img').attr("src") != errImg) {
		$('#' + o.attr("id") + '_err').slideDown("slow");
	}
	
	$('#' + o.attr("id") + '_img').attr("src",errImg);
	o.removeClass(); o.addClass("err");
}

function validate_required(v) { 
	if (v==null || v=="") { return false; } 
	return true; 
}
function validate_length(v,a,b) {
	if (v.length<a || v.length>b) { return false; }
	return true;
}
function validate_match(v,a) {
	if(v==null || v=="") { return true; }
	if(a.test(v)) { return true; }
	return false;
}
function validate_email(v) {
	apos=v.indexOf("@");
	dot=v.lastIndexOf(".");
	if (apos<1 || dot-apos<2) { return false; }
	return true;
}
function validate_phone(v) {
	var s = stripChars(v,"()- ");
	if(!validate_match(s,/\d/))   { return false; }
	if(!validate_length(s,10,10)) { return false; }
	return true;
}

function stripChars(s,b) { 
	var i; var r="";
	for (i = 0; i < s.length; i++) {   
		if (b.indexOf(s.charAt(i)) == -1) { r+=s.charAt(i); }
	}
	return r;
}
