function deselectAllTabs() {
    $$('.tabHeader td.Selected').each(function(elem) {
        if(elem.hasClassName('Selected')) {
            elem.removeClassName('Selected'); 
        }
    });
}

function hideAllTabs() {
    $$('.tabItems .tabItem').each(function(elem) {
        elem.hide();
    });
}       

Event.observe(window, 'load', function() {
    //Set events for mouse movements on the tab header
    $$('.tabHeader td').each(function(elem) {
        Event.observe(elem, 'mouseover', function() {
            if(!elem.hasClassName('hover')) {
                this.addClassName('hover'); 
            }
        });
        Event.observe(elem, 'mouseout', function() {
            if(this.hasClassName('hover')) {
                this.removeClassName('hover'); 
            }
        });
    });

    //Set events for handling tab header clicks
    $$('.tabHeader td a').each(function(elem) {
        Event.observe(elem, 'click', function(event) {
            Event.stop(event);

            var matches = this.id.match(/.*?(\d+)/);
            var id = 'tabContent' + matches[1];
            var td = this.up('td');

            deselectAllTabs();
            hideAllTabs(); 

            td.addClassName('Selected');
            $(id).show();
        });
    });
});
