errorMarker = function(errorFieldPrefix, errorClass, messagesField){
	this.errorFieldPrefix = errorFieldPrefix;
	this.errorClass = errorClass;
	this.messagesField = messagesField;
	this.messages = [];
}

errorMarker.prototype.markError = function(highlightField, error,  bindEvent) {
	if(!defined(bindEvent))
		bindEvent = 'mouseover';
	if(!error){
		$('#' + highlightField).removeClass(this.errorClass);		
	}else{
		$('#' + highlightField).addClass(this.errorClass);
		var self =this;
		$('#' + highlightField).bind(bindEvent, function(){
				$(this).removeClass(self.errorClass); 
				$(this).unbind(bindEvent);		
			});
		this.messages.push(error);
	}

}

errorMarker.prototype.clearMessages = function(){
	$('#' + this.messagesField).html('');
	this.messages.length = 0;
}

errorMarker.prototype.addMessage = function(message){
	this.messages.push(message);
}

errorMarker.prototype.displayMessages = function(){
	if(this.messages.length){
		$('#' + this.messagesField).html('<ul><li><b>' + this.messages.join('</b></li><li><b>') + '</b></li></ul>');
		return true;
	}else
		return false;
}

