﻿
function GetPreviousSibling(node, tag) {    
    while (node != null && node.previousSibling.nodeName.toUpperCase() != tag.toUpperCase())
        node = node.previousSibling;

    return node.previousSibling;        
}

var sliderItem_prevSelected;

function sliderItem_selected(selectedItem, mode) {
    if (!selectedItem) {
        sliderItem_prevSelected = null;
        selectedItem = document.getElementById("view_all_link");
    }
    if (mode)
        slider_mode = mode;
    selectedItem = selectedItem.getElementsByTagName("a")[0];
    var listElements = document.getElementById("sliderCtrls").getElementsByTagName("li");

    var productGroups = [];
    var ids = [];
    var i, node;

    for (var i = 1; i < 15; i++) {
        var groups = ["cc", "ccl", "mby"];
        for (var j = 0; j < groups.length; j++)
        {
            var id = groups[j] + "-products" + i;
            if ((node = document.getElementById(id)) != null) {
                node.style.display = "none";
                GetPreviousSibling(node, "H2").className = "";
            }
        }

    }
    
    for (var i=1; i<15; i++)
    {
        var id = slider_mode + "-products" + i;
        node = document.getElementById(id);
        if (node) 
        {
            productGroups[productGroups.length] = node;
        }
        ids[ids.length] = id;
    }

    var hideAll = false;
    if (sliderItem_prevSelected == selectedItem)
    {
        hideAll = true;
        sliderItem_prevSelected = null;
    } else {
        sliderItem_prevSelected = selectedItem;
    }
    for (var i = 0; i < productGroups.length; i++) {
        listElements[i].className = "";

        GetPreviousSibling(productGroups[i], "H2").className = selectedItem.className;
        productGroups[i].style.display = "none";
        
        if ( !hideAll )
        {
            if (productGroups[i].id == slider_mode + "-" + selectedItem.className ) {
                productGroups[i].style.display = "block";
            } else if (selectedItem.className == "view_all") {
                productGroups[i].style.display = "block";
            }
        } else {
            GetPreviousSibling(productGroups[i], "H2").className = "";
        }
    }

    document.getElementById("viewall_tabs").style.display = selectedItem.className == "view_all" ? "" : "none";

    
    if ( hideAll )
    {
        document.getElementById("products").style.display = "none";
    } else {
        document.getElementById("products").style.display = "block";
        document.getElementById("products").className = selectedItem.className;
        selectedItem.parentNode.className = "selected";
    }

    document.getElementById("cc_tab").className = slider_mode == "cc" ? "viewall_tab_sel" : "viewall_tab";
    document.getElementById("ccl_tab").className = slider_mode == "ccl" ? "viewall_tab_sel" : "viewall_tab";
    document.getElementById("mby_tab").className = slider_mode == "mby" ? "viewall_tab_sel" : "viewall_tab";

    document.getElementById("cc_check").style.display = slider_mode == "cc" ? "" : "none";
    document.getElementById("ccl_check").style.display = slider_mode == "ccl" ? "" : "none";
    document.getElementById("mby_check").style.display = slider_mode == "mby" ? "" : "none";
    
}

function sliderPrev_clicked() {
    var listElements = document.getElementById("sliderCtrls").getElementsByTagName("ul")[0].getElementsByTagName("a");

    for (var i = 1; i < listElements.length; i++) {

        if (listElements[i].parentNode.className == "selected") {
            sliderItem_selected(listElements[i - 1].parentNode);
        }
    }
}

function sliderNext_clicked() {
    var listElements = document.getElementById("sliderCtrls").getElementsByTagName("ul")[0].getElementsByTagName("a");

    for (var i = listElements.length - 2; i >= 0;  i--) {

        if (listElements[i].parentNode.className == "selected") {
            sliderItem_selected(listElements[i + 1].parentNode);
        }
    }
}
