jQuery.validator.addMethod("zipUS", function(value, element) {
        return this.optional(element) && value.match(/[0-9]{5}/);
}, "Please specify a valid zip number");

// Default settings for ALL forms validation  
jQuery.validator.setDefaults({
	invalidHandler: function(form, validator) {
		$("#errorMsg").addClass("ui-widget");
		$("#errorMsg").html('<div class="ui-state-error ui-corner-all" style="padding: 0.3em; margin-bottom: 10px;"><span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em; margin-top: .3em;"></span><span id="errorMsgText"></span></div>');
    	$("#errorMsgText").html("The form contains errors");
    	$("#errorMsg").show();
    },
    /*success: function(){
    	$("#errorMsg").hide();
    },*/
    focusInvalid: true,
    errorClass: "error",
    errorElement: "span"
//    ,debug: true
});

//Make error list
function makeErrorList(errorObj){
	var error = "The form contains errors:<ul>";
	for(field in errorObj){
		if(errorObj[field].valid == 'false'){
			error += "<li>- "+errorObj[field].msg+"</li>";
		}
	}
	error +="</ul>";
	
	return error;
}

// Single field validation 
function validateField(obj){
    var t = obj; 
    if (obj.value != obj.lastValue) {
      if (obj.timer) clearTimeout(obj.timer);
      $('#errorMsg').html('<img src="assets/images/ajax/loading.gif" height="16" width="16" />');
      
      obj.timer = setTimeout(function () {
        $.ajax({
          url: 'index.cfm',
          data: 'action=checkfield&fieldname='+t.id+'&'+t.id+'=' + t.value,
          dataType: 'script',
          type: 'post',
          success: function (j) {
            if(responce.error=='false'){
                $('#errorMsg').html('');
            }else{
                $('#errorMsg').html(responce.msg);
            }
          }
        });
      }, 200);
      obj.lastValue = obj.value;
    }
}
