(function($) {
    
    $.fn.stylefile = function(options) {

        var settings = {
            width : 250
        };
                
        if(options) {
            $.extend(settings, options);
        };
                        
        return this.each(function() {
            
            var self = this;
            var wrapper = $("<div>")
                            .css({
                                "width": settings.imagewidth + "px",
                                "height": settings.imageheight + "px",
                                "background": "url(" + settings.image + ") 0 0 no-repeat",
                                "background-position": "right",
                                "display": "inline",
                                "position": "absolute",
                                "overflow": "hidden"
                            });
                            
            var filename = $('<input class="file">')
                             .addClass($(self).attr("class"))
                             .css({
                                 "display": "inline",
                                 "width": settings.width + "px"
                             });

            $(self).before(filename);
            $(self).wrap(wrapper);

            $(self).css({
                        "position": "relative",
                        "height": settings.imageheight + "px",
                        "width": settings.width + "px",
                        "display": "inline",
                        "cursor": "pointer",
                        "opacity": "0.0"
                    });

            if ($.browser.mozilla) {
                if (/Win/.test(navigator.platform)) {
                    $(self).css("margin-left", "-115px");                    
                } else {
                    $(self).css("margin-left", "-168px");                    
                };
            } else {
                $(self).css("margin-left", settings.imagewidth - settings.width + "px");                
            };

            $(self).bind("change", function() {
                filename.val($(self).val());
            });
      
        });

    };
    
})(jQuery);


jQuery.fn.hint = function() {
return this.each(function(){
	var t = $(this);
	var title = t.attr('title');
	
	if (title) { 
		t.focus(function(){
			if (t.val() == title) {
			  t.val('');
			  t.removeClass('blur');
			}
		})

		t.blur(function(){
			if (t.val() == '') {
			  t.val(title);
			  t.addClass('blur');
			}
		})

		t.parents('form:first()').submit(function(){
			if (t.val() == title) {
				t.val('');
				t.removeClass('blur');
			}
		});

		t.blur();
	}
})				
}

