/*
 * Style File - jQuery plugin for styling file input elements
 *
 * Copyright (c) 2007-2009 Mika Tuupola
 *
 * Licensed under the MIT license:
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * Based on work by Shaun Inman
 *   http://www.shauninman.com/archive/2007/09/10/styling_file_inputs_with_css_and_the_dom
 *
 */

(function($)
{
 $.fn.filestyle = function(options)
 {
  var settings =
  {
   width : 250
  };
  if(options)
  {
   $.extend(settings, options);
  };

  return this.each(function()
  {
   var self = this;
   var wrapper = $("<div>").addClass('upload_button');
   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", "-142px");
       } else {
           $(self).css("margin-left", "-168px");
       };
   }
   else
   {
       $(self).css("margin-left", settings.imagewidth - settings.width + "px");
   };

   $(self).bind
   (
    "change",
    function()
    {
     jQuery(this).parent().parent().find("input").val($(this).val());
    }
   );
  });
 };
})(jQuery);

