$(function() {
  $('#signin-email').selfLabel();
  $('#signin-number').selfLabel();

  $('form#graph-form input[type=image]').click(function() {
    var form = $(this).parents('form');
    var url = form.attr('action')
    
    var params = form.serialize() + '&' + $(this).attr('name') + '=' + $(this).attr('value');
    
    var area = $(this).siblings('.graph-area');
    area.find(':not(img.spinner)').remove();
    area.show().addClass('loading');
    
    $.post(url, params, function(data, status) {
      var error = data.match(/ERROR: (.*)/);
      
      if (error) {
        // Display error message
        var message = error[1];
        
        area.siblings('p.error').remove();
        area.before($('<p class="error"></p>').text(message));
        area.hide();
      } else {
        // Display graph
        area.prev('p.error').remove();
        area.removeClass('loading');
        area.append('<img src="' + data + '" class="graph-img" />');
      }
    });
    
    return false;
  });
  
  $('a.select-all').click(function() {
    var container = $(this).parents('.graph-type');
    var unchecked = container.find('input[type=checkbox]:not(:checked)');

    var checkboxes = (unchecked.length == 0) ? container.find('input[type=checkbox]') : unchecked;
    checkboxes.each(function() { $(this).click(); });
    
    return false;
  });
  
  $('#inventory-data table tr:odd').addClass('odd');
});

