/**
 * Dynamic Field -jQuery plugin 0.9
 * 
 * With the help of this plugin it is more easy to make a text-field
 * dynamic in use. Textfield can be selected by jQuery selectors and then
 * only add .dynamicField();
 * 
 * e.g.: $('#myTextElement').dynamicField();
 * 
 * Also you can add some options declared below.
 * 
 * e.g.: $('#myTextElement').dynamicField({ text: 'other text as in input argument value!'});
 * 
 * Copyright (c) 2009, 2010 Groupon
 * 
 * @author Kay Bucksch
 */

/**
 * Options:
 * - text: String --> other argument as in input argument value
 */
;(function($) {
	
	$.fn.extend({
		dynamicField : function($$options) {
			
			var $settings = $.extend({}, $.DynamicField.defaults, $$options);
			
			if(!$(this).is(':input')) {
				return false;
			}
			
			return this.each(function() {
				new $.DynamicField(this, $settings);
			});
		}
	});
	
	$.DynamicField = function(input, options) {
		
		var $input = $(input);
		var $options = $.meta ? $.extend({}, options, $input.data()) : options;

		if($input.val() && $input.val() != '') {
			$options.text = $input.val();
		}
		
		$input.focus(function() {
			if($input.val() == $options.text) {
				$input.val('');
			}
		}).blur(function() {
			if($input.val() == '') {
				$input.val($options.text);
			}
		});
	};
		
	$.DynamicField.defaults = {
		text: null
	};
	
})(jQuery);