jQuery.extend(FormValidator, {
	onError: function (errorList) {
		this.removeCssByField(".fieldError");
		
		jQuery(errorList[0].field).focus();
		
		for(var i = 0; i < errorList.length; i++) {
			this.addCss(errorList[i]);
		}
	},
	
	addCss: function (field) {
		var fieldError = (field.errorFocus != undefined) ? field.errorFocus : field.field;
		jQuery(fieldError)
			.addClass("fieldError")
			.one("focus", function () { FormValidator.removeCss(field); })
			.one("click", function () { FormValidator.removeCss(field); })
			.one("keypress", function () { FormValidator.removeCss(field); });
		
		var commentParent = (fieldError.tagName != undefined && fieldError.tagName.toUpperCase() == "FIELDSET") ? 
				jQuery(fieldError) : jQuery(fieldError).parent("label");
		commentParent.find("small.error").remove().end()
			.find("small.fieldComment").hide().end()
			.append("<small class='error'>" + field.message + "</small>").end();
	},//Method addCssError
	
	removeCss: function (field) {
		var fieldError = (field.errorFocus != undefined) ? field.errorFocus : field.field;
		this.removeCssByField(fieldError);
	},//Method removeCssError
	
	removeCssByField: function (field) {
		jQuery(field)
			.removeClass("fieldError");
		
		var commentParent = (field.tagName != undefined && field.tagName.toUpperCase() == "FIELDSET") ? 
				jQuery(field) : jQuery(field).parent("label");
		commentParent
			.find("small.error").remove().end()
			.find("small.fieldComment").show();
	}//Method removeCssByField
});