var s_hist;

function get_hist(h_tp) {
    var h_ck, dc, prefix, begin, end, nav_all, nav_tl, s_hist;
    
    dc = document.cookie;
    
    switch(h_tp) {
        case 1:
            prefix = "fcrr_schist=";
            break;
        case 2:
            prefix = "fcrr_bchist=";
            break;
        default:
            return null;
    };
    
    begin = dc.indexOf("; " + prefix);
    
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        
        if (begin != 0)
            return null;
    } else {
        begin += 2;
    }
    
    end = dc.indexOf(";", begin);
    
    if (end == -1) {
        end = dc.length;
    }
    
    h_ck = unescape(dc.substring(begin + prefix.length, end));
    s_hist = new Array();
    
    switch(h_tp) {
        case 1:
            s_hist = h_ck.split('^');
            break;
        case 2:
            nav_all = h_ck.split('|');
            for(i = 0; i < nav_all.length; i++) {
                s_hist[i] = nav_all[i].split('^')
            }
            break;
    };

    return s_hist;
};

function set_hist(h_tp, s_hist) {
    var h_ck, i, dt;

    switch(h_tp) {
        case 1:
            h_ck = "fcrr_schist=" + escape(s_hist[0] + '^' + s_hist[1]);
            break;
        case 2:
            h_ck = "fcrr_bchist=";
    
            for (i = 0; i < s_hist.length; i++) {
                h_ck += escape(s_hist[i][0] + '^' + s_hist[i][1]);
                if (i < s_hist.length - 1) {
                    h_ck += escape('|');
                }
            }

            break;
    };
    
    if (navigator.cookieEnabled) {
        dt = new Date(2011, 0, 1);
        h_ck += "; expires=" + dt.toGMTString();
    }
    
    h_ck += "; path=/";
    document.cookie = h_ck;
};

function reset_hist(h_tp) {
    var h_ck;
    
    switch(h_tp) {
        case 1:
            h_ck = "fcrr_schist=";
            break;
        case 2:
            h_ck = "fcrr_bchist=";
            break;
    };
    
    document.cookie = h_ck + "; path=/; expires=Thu, 01-Jan-70 00:00:01 GMT";
};

function get_crumbs (sh_cmd, tier, c_id) {
    var rs_hist, i, ln, ft_str, ss_hist;
    
    ft_str = "&nbsp;<a href=\"/index.shtml\" class=\"crumbs\">FCRR Home</a>\&nbsp;\&gt;\&gt;\&nbsp;";
    
    switch(sh_cmd) {
        case "reset":
            reset_hist(1);
            break;
        case "new":
            ft_str += "<strong>" + document.title + "</strong>";
            ss_hist = new Array(document.title, document.URL);
            set_hist(1, ss_hist);
            break;
        case "use":
            ss_hist = get_hist(1);
            if (ss_hist != null) {
                ft_str += "<a href=\"" + ss_hist[1] + "\" class=\"crumbs\">" + ss_hist[0] + "</a>\&nbsp;\&gt;\&gt;\&nbsp;";
            }
            break;
        default:
            break;
    };
    
    if (tier > 0) {
        rs_hist = get_hist(2);
    
        if (rs_hist != null) {
            ln = rs_hist.length;
        } else {
            ln = 0;
            rs_hist = new Array();
        }
    
        if (ln == tier) {
            rs_hist[ln - 1][0] = document.title;
            rs_hist[ln - 1][1] = document.URL;
        } else if (ln < tier) {
            rs_hist[ln] = new Array(document.title, document.URL);
        } else if (ln > tier) {
            rs_hist[tier - 1] = new Array(document.title, document.URL);
            for (i = ln - 1; i >= tier; i--) {
                rs_hist.pop();
            }
        }    

        for (i = 0; i < rs_hist.length; i++) {
            if (i == rs_hist.length - 1) {
                ft_str += "<strong>" + rs_hist[i][0] + "</strong>";        
            } else {
                ft_str += "<a href=\"" + rs_hist[i][1] + "\" class=\"crumbs\">" + rs_hist[i][0] + "</a>\&nbsp;\&gt;\&gt;\&nbsp;";
            }
        }
        set_hist(2, rs_hist);
    }
    
    cn = document.getElementById(c_id);
    cn.innerHTML = ft_str;
}

function clear_crumbs() {
    reset_hist(1);
    reset_hist(2);
};


 
