$(document).ready(function(){
    adjust();
    $(window).resize(function(){
        adjust()
    });
});

function adjust(){
    var h = $(window).height()-139-$('#header').height();
    $('#content_wrapper').css({
        'min-height': h + 'px'
    });
    $('#main_col').css({
        'min-height': h-10 + 'px'
    });
    if($('#right_col').length != 0) {
        h = $('#main_col').height() > h - 10 ? $('#main_col').height() : h - 10;
        $('#right_col').css({
            'min-height': h-10 + 'px'
        });
    } else {
        $('#main_col').css({
            'width': '100%'
        });
    }
}


function switch_tab(id, elem) {
    if (typeof elem != 'undefined') {
        $('.tab.current').removeClass('current');
        $(elem).addClass('current'); 
    }
    $('.tab_wrapper:visible').hide();
    $('#tab'+id).show();    
    $('#alltab_wrapper').css({
        'height': ($('#tab'+id).height()+100)+'px'
    });
}

var slider = {
    pause: false,
    _current: 0,
    _total: 0,
    _scroll: 0,
    _horizontal: false,
    _interval: 10000,
    _timeout: null,
    slide: function(slideTo) {
        if (slider.pause == true) return false;
        //var last_slide = false;
        //if (slider._horizontal == true) {
        //    var margin = 'left';
        //} else {
        //    var margin = 'top';
        //}
        //if (slider._current == slider._total) {
        //    $('#slider').css('margin-'+margin, '0px');
        //}
        $('div.slider_button.current').removeClass('current');
        //if (slider._current == slider._total-1 ) {
        //    slider._current = slider._total;
        //    last_slide = true;
        //} else {
        if (typeof slideTo != 'undefined') {
            slider._current = slideTo;
        } else {
            slider._current = (slider._current+1)%slider._total;
        }
        //}
        //if (last_slide == true) {
        //    $('div#slide_0').addClass('current');
        //} else {
        $('div#slide_'+slider._current).addClass('current');
        //}
        if (slider._horizontal == true) {
            $('#banner_slider').stop().animate({
                'margin-left': (-slider._current*slider._scroll) + 'px'
            });
        } else {
            $('#banner_slider').stop().animate({
                'margin-top': (-slider._current*slider._scroll) + 'px'
            });
        }
        slider._timeout = setTimeout('slider.slide()', slider._interval);
    },
    initiate: function(mode, interval) {
        slider._total = $("#banner_slider div.slide").length;        
        //$('#slider div.slide:first-child').clone().appendTo('#slider');
        if (typeof interval != 'undefined') {
            slider._interval = interval;
        }
        if (mode == 'horizontal') {
            slider._horizontal = true;
            slider._scroll = parseInt($('#slider_container').css('width'), 10);
            $('#banner_slider').css('width', (slider._scroll*slider._total)+'px');
        /* @todo horizontal buttons */
        }
        if (mode == 'vertical') {
            slider._scroll = parseInt($('#slider_container').css('height'), 10);
            $('#slider_button_container').css('margin-top', 128-10*slider._total+'px');/*(250-slider._total*12-(slider._total-1)*7)/2*/
            if (slider._total != 1) {
                for (var i=0; i<slider._total; i++) {
                    var div = $('<div></div>')
                    .addClass('slider_button')
                    .attr({
                        id: 'slide_'+i,
                        alt: i
                    })
                    .click(function() {
                        if (slider._timeout != null) clearTimeout(slider._timeout);
                        slider.slide($(this).attr('alt'));
                    });
                    if (i==0) div.addClass('current');
                    $('#slider_button_container').append(div);
                }
            }
        }
        slider._timeout = setTimeout('slider.slide()', slider._interval);
    }
}

$(window).load(function() {
    slider.initiate('vertical', 10000);
});

