$(document).ready(function() {
    // Equal height sidebar    
    if ($('#content').height > $('#sidebar').height) {
        $('#sidebar').height(($('#content').height()));
    } else {
        $('#sidebar').height($(window).height());
    }
    
    // Tab Toggle on Forms
    $('form div.content-box-header ul.tabs li a').bind('click', function(e) {
        e.preventDefault();
        var name = $(this).attr('rel');
        $('form div.content-box-header ul.tabs li').each(function(i) {
            $('a', $(this)).removeClass('selected');
            $('div#panel-'+$('a', $(this)).attr('rel')).fadeOut('fast');
        });    
        $('form div.content-box-header ul.tabs li a[rel='+name+']').addClass('selected');        
        $('div#panel-'+name).fadeIn('fast');
    });
    
    // Views: Search Tab
    var selectedTab = '';
    $('a[rel=search]').bind('click', function(e) {
        e.preventDefault(); // Don't load URL
        
        if ($(this).hasClass('selected')) {
            // Deselect search, restore tab
            $('#search').hide(); // Hide search
            $('ul.tabs li a').removeClass('selected'); // Deselect all tabs
            $('ul.tabs li a[href='+selectedTab+']').addClass('selected'); // Select the original tab
        } else {
            // Select search, deselect tab
            selectedTab = $('ul.tabs li a.selected').attr('href'); // Store selected tab URL for later use
            $('ul.tabs li a').removeClass('selected'); // Deselect all tabs
            $(this).addClass('selected'); // Select this search tab
            
            // Position search box
            tabPos = $(this).offset(); // Get this tab's position, so search box can be positioned relative
            $('#search').css('top', (tabPos.top+24)+'px');
            $('#search').css('left', (tabPos.left-209)+'px');
            $('#search form p input[name=search]').addClass('description');
            $('#search').show();
        }
    });
    
    // Views: Search Box
    $('#search form p input[name=search]').focus(function() {
        if ($(this).val() == 'Search Term(s)') {
            $(this).val('');
            $(this).removeClass('description');
        }
    });
    $('#search form p input[name=search]').blur(function() {
        if ($(this).val() == '') {
            $(this).val('Search Term(s)');
            $(this).addClass('description');
        }
    });
    
    // Views: Select / Deselect All
    $('input[name=all]').bind('change', function(e) {
        if ($(this).is(':checked')) {
            $('input[name^=primaryKeys]').attr('checked', true);
            $('input[name^=primaryKeys]').parent().parent().addClass('selected');
        } else {
            $('input[name^=primaryKeys]').attr('checked', false);
            $('input[name^=primaryKeys]').parent().parent().removeClass('selected');
        }           
    });
    
    // Views: Highlight / unhighlight row on checkbox
    $('input[name^=primaryKeys]').bind('change', function(e) {
        if ($(this).is(':checked')) {
            $(this).parent().parent().addClass('selected');
        } else {
            $(this).parent().parent().removeClass('selected');
        }    
    });
    
    // Views: Apply to Selected
    $('input[name=apply]').bind('change', function(e) {
        $('input[name^=primaryKeys]').is(':checked');    
    });
})
