/**
 * jQuery.placeholder - Placeholder plugin for input fields
 * Written by Blair Mitchelmore (blair DOT mitchelmore AT gmail DOT com)
 * Licensed under the WTFPL (http://sam.zoy.org/wtfpl/).
 * Date: 2008/10/14
 *
 * Modified by Rimas Kudelis to account for form reset possibility
 * Date: 2010/03/02
 *
 * @author Blair Mitchelmore
 * @version 1.0.2
 *
 **/
new function($) {
    $.fn.placeholder = function(settings) {
        settings = settings || {};
        var key = settings.dataKey || "placeholderValue";
        var attr = settings.attr || "placeholder";
        var className = settings.className || "placeholder";
        var values = settings.values || [];
        var block = settings.blockSubmit || false;
        var blank = settings.blankSubmit || false;
        var submit = settings.onSubmit || false;
        var value = settings.value || "";
        var position = settings.cursor_position || 0;

        
        return this.filter(":input[placeholder]").each(function(index) { 
            $.data(this, key, values[index] || $(this).attr(attr)); 
        }).each(function() {
            if (($.trim($(this).val()) === "") || ($.trim($(this).val()) === $.data(this, key)))
                $(this).addClass(className).val($.data(this, key));
        }).focus(function() {
            if ($.trim($(this).val()) === $.data(this, key)) {
            	$(this).removeClass(className).val(value);
                if ($.fn.setCursorPosition) {
                  $(this).setCursorPosition(position);
                }
			}
        }).blur(function() {
            if ($.trim($(this).val()) === value)
                $(this).addClass(className).val($.data(this, key));
        }).each(function(index, elem) {
            new function(e) {
                $(e.form).bind("reset", function() {
                    setTimeout(function() { $(e).trigger('blur'); }, 0);
                });
			}(elem);
            if (block)
                new function(e) {
                    $(e.form).submit(function() {
                        return $.trim($(e).val()) != $.data(e, key)
                    });
                }(elem);
            else if (blank)
                new function(e) {
                    $(e.form).submit(function() {
                        if ($.trim($(e).val()) == $.data(e, key)) 
                            $(e).removeClass(className).val("");
                        return true;
                    });
                }(elem);
            else if (submit)
                new function(e) { $(e.form).submit(submit); }(elem);
        });
    };
}(jQuery);

/* Only add placeholders if the browser does not support them */
jQuery(document).ready(
	function($) {
		var i = document.createElement('input');
		if (!('placeholder' in i)) {
			$(':input[placeholder]').placeholder({blankSubmit: true});
		}
	}
);

