(function($)
{
    var focusHandler = function(e)
	{
	    var $elm = $(this);
		if ($.trim($elm.val()) === $elm.data('defaultText'))
		{
			$elm.val('');
			$elm.removeClass('default-text');
		}
		
		if ($elm.attr('type') == "password")
		{
			$elm.siblings('.default-password').hide();
		}
	};
	var blurHandler = function(e)
	{
	    var $elm = $(this);
		if ($.trim($elm.val()) === '')
		{
			$elm.addClass('default-text').val($elm.data('defaultText'));
			
			if ($elm.attr('type') == "password")
			{
				$elm.siblings('.default-password').show();
			}
		}
	};
	
	// Loop through all the text inputs that have the class default-text and extend their functionality
	$('.default-text').each(function(i)
	{
		var $elm = $(this);
		var defaultText = $.trim($elm.val());
		var textTitle = $.trim($elm.attr('title'));
		if (textTitle.length > 0)
		{
		    defaultText = textTitle;
		}
		if ($elm.attr('type') == "password" && defaultText == "")
		{
			var $defaultPassword = $('<label class="default-password">Password</label>');
			$elm.after($defaultPassword);
			$defaultPassword.click(function(e)
			{
				$elm.focus();
			});
		}
		else if (defaultText.length === 0)
		{
			return true;
		}
		if (defaultText != $elm.val())
		{
		    $elm.removeClass('default-text');
		}
		$elm.data('defaultText', defaultText).focus(focusHandler).blur(blurHandler);
	});
})(jQuery);
