
if ( document.getElementById && document.getElementsByTagName ) {
    var ht = dw_Viewport.getWinHeight() - 150;
    var rule = 'div#tabset1 { min-height:' + ht + 'px; }';
    document.write('<style type="text/css">' + rule + '</style>');
    addLoadEvent(initTabs);
}

dw_Event.add(window, 'resize', resizeTabs);

function resizeTabs() {
    var ht = dw_Viewport.getWinHeight() - 150;
    var el = document.getElementById('tabset1');
    el.style.minHeight = ht + 'px';
}

var current_tab = null;
function initTabs() {
    var nav = document.getElementById('tabset1_navs');
    var nav_links = nav.getElementsByTagName('a');
    var len = nav_links.length;
    for (var i=0; i<len; i++) {
        nav_links[i].onclick = showClicked;
        var id = nav_links[i].href.split('#')[1];
        nav_links[i].id = id + '_tab';
    }
    var cur = dw_getCookie('dw_tabs') || nav_links[0].id;
    setInitialTab(cur);
}

function setInitialTab(tab_id) {
    var pane_id = tab_id.substr(0, tab_id.lastIndexOf('_') );
    document.getElementById(tab_id).className = 'active';
    document.getElementById(pane_id).className = 'active pane';
    current_tab = tab_id;
}

function showClicked(e) {
    var tab_id = this.id || e; // not using event, but passing id when used from (horrors!) event handler
    var pane_id = tab_id.substr(0, tab_id.lastIndexOf('_') );
    hideCurrent();
    document.getElementById(tab_id).className = 'active';
    document.getElementById(pane_id).className = 'active pane';
    current_tab = tab_id;
    dw_setCookie('dw_tabs', tab_id);
    return false;
}

function hideCurrent() {
    document.getElementById( current_tab ).className = '';
    var pane_id = current_tab.substr(0, current_tab.lastIndexOf('_') );
    document.getElementById(pane_id).className = 'pane';
}