var CP={
    init:function(){
        jQuery("body").addClass("js");
        CP.Features.init();
        CP.Util.equalize("#meta>div");
    },
    Features:{
        init:function(){
            Tabs.init(jQuery(".panels"));
        }
    },
    Util:{
        equalize:function(selector){
            var maxHeight=1;
            jQuery(selector).each(function(){
                if (this.offsetHeight > maxHeight) {
                    maxHeight = this.offsetHeight;
                }
            });
            jQuery(selector).css("height",maxHeight+"px");
        }
    }
}

var Tabs={
    container:null,
    panels:Array(),
    init:function(container){
        Tabs.container=jQuery(container);
        jQuery('.panel',Tabs.container).each(
            function(i){
                var newPanel={};
                newPanel.element=this;
                newPanel.id=this.id;
                newPanel.index=i;
                newPanel.title=jQuery('h2',this)[0];
                newPanel.tab=Tabs.createTab(newPanel);
                Tabs.panels[i]=newPanel;
            }
            )
        Tabs.createTabsBar();
        Tabs.showPanel(Tabs.panels[0]);
    },
    createTab:function(panel){
        var tab=document.createElement("li");
        var tabLink=document.createElement("a");
        tabLink.innerHTML=panel.title.innerHTML;
        tabLink.href="#"+panel.id;
        jQuery(tabLink).click(function() {
            Tabs.showPanel(panel);
            return false;
        })
        tab.appendChild(tabLink);
        return tab;
    },
    createTabsBar:function(){
        var tabsParent=jQuery(".tab-container")[0];
        var ul=document.createElement("ul");
        jQuery(Tabs.panels).each(function(){
            ul.appendChild(this.tab);
        });
        var tabBar=document.createElement("div");
        tabBar.className="tabs";
        tabBar.appendChild(ul);
        tabsParent.appendChild(tabBar);

        next=document.createElement("a");
        next.className="next";
        next.innerHTML="&raquo;";
        next.href="#";
        jQuery(next).click(function() {
            Tabs.showNextPanel();
            return false;
        })

        previous=document.createElement("a");
        previous.className="previous";
        previous.innerHTML="&laquo;";
        previous.href="#";
        jQuery(previous).click(function() {
            Tabs.showPreviousPanel();
            return false;
        })



        tabBar.appendChild(next);
        tabBar.appendChild(previous);

    },
    showNextPanel:function(){
        if (Tabs.activePanelIndex<(Tabs.panels.length-1)){
            nextIndex=Tabs.activePanelIndex+1;
        }else{
            nextIndex=0;
        }
        //        alert(nextIndex);
        if (nextIndex!=0){
            Tabs.showPanel(Tabs.panels[nextIndex]);
        } else {
            //document.location.href = document.getElementById("exittab_link");
//            window.location.href="/authake/user/register";
            window.location.href = document.getElementById("exittab_link");
            return false;
        }
    },
    showPreviousPanel:function(){
        if (Tabs.activePanelIndex>(0)){
            nextIndex=Tabs.activePanelIndex-1;
        }else{
            nextIndex=Tabs.panels.length-1;
        }
        Tabs.showPanel(Tabs.panels[nextIndex]);
    },
    showPanel:function(panel){
        var l = (jQuery(".tab-container")[0].clientWidth)*panel.index;
        Tabs.container.animate({
            left:"-"+l+"px"
        },"slow","easeboth");
        Tabs.activeTab(panel.tab);
        Tabs.activePanelIndex=panel.index;
    },
    activeTab:function(tab){
        jQuery("#features li.active").each(function(){
            jQuery(this).removeClass("active")
        });
        tab.className="active";
        jQuery(tab).DropInUp(250);
    }

}


jQuery(document).ready(function(){
    CP.init()
});