jQuery.fn.labelOver = function(overClass) {
	return this.each(function(){
		var label = jQuery(this);
		var f = label.attr('for');
		if (f) {
			var input = jQuery('#' + f);
			
			var typeClass = (input.length>0) ? overClass+ '-type-'+ input[0].type.toLowerCase() : '';
			
			this.hide = function() {
			  label.css({ textIndent: -10000 })
			}
			
			this.show = function() {
			  if (input.val() == '') label.css({ textIndent: 0 })
			}

			// handlers
			input.focus(this.hide);
			input.blur(this.show);
		  	label.addClass(overClass).addClass(typeClass).click(function(){ input.focus() });
			
			if (input.val() != '') this.hide(); 
		}
	})
}