(function($) {
	$.fn.formStyler = function(defaultText, options) {
		//merge options with defaults
		var settings = $.extend({}, $.fn.formStyler.defaults, options);
		
		//loop through each element
		return this.each(function(){
			$this = $(this);
			// build element specific options
			var s = $.meta ? $.extend({}, settings, $this.data()) : settings;
			
			//store the settings and default in the object
			$this.data('defaultText', defaultText);
			$this.data('settings', s);
			
			//set up default and initial styles
			if($this.val()=='' || $this.val() == defaultText){
				$this.val(defaultText);
				$this.css(s.defaultStyle);
			}
			else{
				$this.css(s.withValueStyle);
			}
			
			//add events
			$this.blur($.fn.formStyler.blurStyle);
			$this.focus($.fn.formStyler.focusStyle);
		});
	};
	$.fn.formStyler.blurStyle=function(event){
		$this=$(this);
		if($this.val() == ''){
			$this.val($this.data('defaultText'));
		}
		if($this.val() == $this.data('defaultText')){
			$(this).css($this.data('settings').defaultStyle);
		}
		else{
			$(this).css($this.data('settings').withValueStyle);
		}
	}
	$.fn.formStyler.focusStyle=function(event){
		$this=$(this);
		if($this.val() == $this.data('defaultText')){
			$this.val('');
		}
		$(this).css($this.data('settings').withValueStyle);
	}
	
	$.fn.formStyler.defaults = {
		defaultStyle:  {color: '#929292'},
		withValueStyle: {color: '#000000'}
	}
})(jQuery);

$(document).ready(function(){
	 //button hand cursors for IE<=7
	 $('input[type=submit]').addClass('h4nd');
	 $('input[type=button]').addClass('h4nd');
	 $('input[type=reset]').addClass('h4nd');
});

