TabControl = {
    tabs: [],
    currentTab: null,
    
    register: function(tab) {
        tab.deactivate();
        
        if (!this.tabs.length)
            tab.activate();
         
        /*if(tab.isdefault)
            tab.activate();
          */  
        this.tabs.push(tab);    
    },
    
    notify: function(tab) {
        cTab = this.currentTab;
        if (cTab)
            cTab.deactivate();
        
        this.currentTab = tab;
    }
};

Tab = Class.create({
    tab: null,
    tabContent: null,
    controller: null,
    isdefault: false,
    taboffimg: null,
    tabonimg: null,
    
    initialize: function(tab, tabContent, onimg, offimg) {
        this.tab = $(tab);
        this.tabContent = $(tabContent);
       
        this.tabonimg = new Image();
        this.tabonimg.src = onimg;
       
        this.taboffimg = new Image();
        this.taboffimg.src = offimg;
        
        if (arguments[5] && arguments[5] == true)
            this.isdefault = true;
             
        TabControl.register(this);
        
        Event.observe(this.tab, 'click', this.activate.bindAsEventListener(this));
    
    },
    
    activate: function() {
        TabControl.notify(this);
        this.tab.src = this.tabonimg.src;
        this.tabContent.show();
    },
    
    deactivate: function() {
        this.tab.src = this.taboffimg.src;
        this.tabContent.hide();
    }
});

document.observe("dom:loaded", 
    function() {
        if ($('description-tab')) {
            new Tab('description-tab','description-content', '/lib/onlinevitalicious/desc-on.jpg', '/lib/onlinevitalicious/desc-off.jpg' );
        }
        if ($('ingredients-tab')) {
            new Tab('ingredients-tab','ingredients-content', '/lib/onlinevitalicious/ingred-on.jpg', '/lib/onlinevitalicious/ingred-off.jpg');        
        }
        if ($('nutritional-information-tab')) {
            new Tab('nutritional-information-tab','nutritional-information-content', '/lib/onlinevitalicious/nf-on.jpg', '/lib/onlinevitalicious/nf-off.jpg');        
        }
    }
);
