(function($) {
  $.isAndroid = function() {
    return navigator.userAgent.match(/Android/i);
  },

  $.redirectTo = function(url) {
    document.location = url;
  },

  $.fn.placeholder = function(a, c) {
    a = a || "placeholder";
    c = c || a;

    var f = function() {
      $(this).removeClass(c);
      if(this.value == this.getAttribute(a))
        this.value = "";
    };

    this.focus(f);
    this.parents("form").submit(function() {
      $(this).find("input").each(f);
    });

    var b = function() {
      p = this.getAttribute(a);
      if(this.value == p || this.value.match(/^\s*$/)) {
        $(this).addClass(c);
        this.value = p;
      }
    };

    this.blur(b);
    this.each(b);

    return this; // jQuery plugins must return the jQuery object.
  };

  $.fn.image_or_file_upload_field = function(container_class, id_prefix) {
    container_selector = '.' + container_class
    field_id = id_prefix + '-' + container_class
    if($(container_selector).length) {
      $(field_id).hide();
      $('<a class="button" href="#">Change</a>')
        .appendTo(container_selector)
        .click(function() {
          $(container_selector).hide();
          $(field_id).show();
          return false
        });
    };

    return this; // jQuery plugins must return the jQuery object.
  };
})(jQuery);


(function() {
  $(document).ready(function() {

    $('li.link').click(function() {
      window.location = $(this).find('a[href]').attr('href');
    });

    if ($('form').length) {

      if (!$('.show-hints').length) {
        $('.field .hint').hide();
        $('.field :checkbox, .field :radio, .inline-field label').hover(
            function() {$(this).parents('.field').children('.hint').fadeIn('fast')},
            function() {$(this).parents('.field').children('.hint').fadeOut('fast')}
        );
        $('.field :input:not(:checkbox)')
          .focus(function() {$(this).parents('.field').children('.hint').fadeIn('fast')})
          .blur(function() {$(this).parents('.field').children('.hint').fadeOut('fast')})
      };

      $('input[placeholder]').placeholder();

      $('.autofocus').eq(0).focus();
    }

    $('.receipt-nav a').click(function() {
      $('.receipt-nav a').removeClass('current');
      $(this).addClass('current');

      $('.panel').hide();
      hash = $(this).attr('href');
      $(hash + '-panel').show();
    })

  });
})();
