﻿function NavItem(_display, _navUrl)
{
    this.display = _display;
    this.navUrl = _navUrl;
}

var navItemArray = new Array();

function navSetContent(_display_a, _navUrl_a, _display_b, _navUrl_b)
{
    navClear();
    navAppend(_display_a, _navUrl_a);
    navAppend(_display_b, _navUrl_b);
}

function navSetSection(_display, _navUrl)
{
    navClear();
    navAppend(_display,_navUrl);
}

function navAppend(_display, _navUrl)
{   
    navItemArray.push(new NavItem(_display, _navUrl));
    renderNav();
}

function navBack()
{
    var thisBackNav = navItemArray.pop();
    renderNav();
}

function navSetItem(_position, _display, _navUrl)
{
    var arrayPosition = _position - 2;

    if(arrayPosition > 0)
    {
        if(navItemArray.length > 2)
        {
            for(navItemLoop = navItemArray.length - 1; navItemLoop > arrayPosition; navItemLoop--)
            {
                var thisPreviousItem = navItemArray.pop();
            }
        }
        
        navAppend(_display, _navUrl);
    }
}

function navClear()
{
    navItemArray = null;
    navItemArray = new Array();
    
    var navCell = document.getElementById('navCell');
    
    if(navCell.hasChildNodes())
    {
        for(navNodeLoop = navCell.childNodes.length - 1; navNodeLoop > -1 ; navNodeLoop--)
        {
            navCell.removeChild(navCell.childNodes[navNodeLoop]);
        }
    }
}

function navClearToBase()
{
    if(navItemArray.length > 2)
    {
        for(navItemLoop = navItemArray.length - 1; navItemLoop > 1; navItemLoop--)
        {
            var thisPreviousItem = navItemArray.pop();
        }
    }
    
    renderNav();
}

function renderNav()
{
    var navCell = document.getElementById('navCell');

    if(navCell.hasChildNodes())
    {
        for(navNodeLoop = navCell.childNodes.length - 1; navNodeLoop > -1 ; navNodeLoop--)
        {
            navCell.removeChild(navCell.childNodes[navNodeLoop]);
        }
    }
    
    var navCell = document.getElementById('navCell');
    
    //alert('starting, length=' + navItemArray.length);
    
    if(navItemArray.length > 1)
    {
        //alert('prepping');
        for(navLoop=0;navLoop<navItemArray.length - 1;navLoop++)
        {
            var navElement = document.createElement('a');
            navElement.className = 'nav';
            navElement.href = 'javascript:navClick(' + navLoop + ');';
            //navElement.onclick=function(){navClick(navLoop);};
            navElement.appendChild(document.createTextNode(navItemArray[navLoop].display));
            
            navCell.appendChild(navElement);
            navCell.appendChild(document.createTextNode(' : '));
            //alert('add');
        }
    }
    
    var currentNavSpan = document.createElement('span');
    currentNavSpan.className = 'nav';
    
    var currentNavText = document.createTextNode(navItemArray[navItemArray.length - 1].display);

    currentNavSpan.appendChild(currentNavText);
    
    navCell.appendChild(currentNavSpan);
    //alert('done');
}

function navClick(elementOrdinal)
{   
    top.frames[2].location = navItemArray[elementOrdinal].navUrl;
    
    var finalElement
    if(elementOrdinal > 0)
    {
        finalElement = elementOrdinal;
    }
    else
    {
        finalElement = 1;
    }
    
    for(navLoop=navItemArray.length;navLoop > finalElement;navLoop--)
    {
        var deletedItem = navItemArray.pop();
    }
    
    if(elementOrdinal == 0) renderNav();
}