$.fn.extend({
  bindSubmit:       function()
                    {
                      this.click(function(event) {
                        event.preventDefault();
                        
                        var form = $(this).parent().parent();
                        var page = form.parent().parent();
                        var data = {};
                        
                        form.find(':input, textarea, select').each(function(i, obj) {
                          data[jQuery(obj).attr('name')] = jQuery(obj).val();
                        });
                        
                        $.post(form.attr('action'), data, function(data) {
                          page.html(data);
                          
                          $('html').scrollTop(0);
                        });
                      });
                    }
  
});


$(document).ready(function() {
  $('#widget-hide').click(function(event) {
    event.preventDefault();
    
    $('#footer').css('padding-bottom', 0);
    
    $('#widgets').fadeOut('fast', function() {
      $('.wrapper').prepend('<a id="widget-show" href="#"><span class="ss_sprite ss_arrow_up">show widgets</span></a>');
    });
  });
  
  $('#widget-show').live('click', function(event) {
    event.preventDefault();
    
    $('#footer').css('padding-bottom', '100px');
    
    $('#widgets').fadeIn('fast', function() {
      $('#widget-show').remove();
    });
  });
  
  $('#tabs').tabs({ 
    load:     function(event, ui)
              {
                //$('div.height-fix').useLoader('hide');
              },
              
    select:   function(event, ui) 
              {
                var index = ui.index;
              
                if(index > 2)
                {
                  var url = $.data(ui.tab, 'load.tabs');
                  location.href = url;
                
                  return false;
                }
                else
                {
                  //$('div.height-fix').useLoader('show');
                }
                
                return true;
              }
  });
});
