
window.onload = function()
{
    setFromCookie();
	//setTimeout("setFromCookie()",200);
}

//function headerMouseOver(td)
//{
//	td.style.backgroundColor='#31527b';
//	td.style.cursor='hand';
//}
//function headerMouseOut(td)
//{
//	td.style.backgroundColor='#31527b';
//}

function headerMousePress(id,td)
{
	ioSwitch(id);
}

function setFromCookie()
{
	if (document.getElementsByTagName) {
		var nl = document.getElementsByTagName('div');
		var l = nl.length;
		for (var i = 0; i<l; i++){
			var node = nl.item(i);
			if (node.getAttribute('name') == 'menuItem') {
				var id = node.id;
				var val = getCookie(id);
				if(val == "collapsed"){
					collapse(id,true);
				} else if (val == 'expanded'){
					expand(id,true);
				} else {
					if(node.getAttribute('init') == 1){
						expand(id,true);
					} else {
						collapse(id,true);
					}
				}	
			}
		}
	}
}	

function setToDefault()
{
	if (document.getElementsByTagName) {
		var nl = document.getElementsByTagName('div');
		var l = nl.length;
		for (var i = 0; i<l; i++){
			var node = nl.item(i);
			if (node.getAttribute('name') == 'menuItem') {
				if(node.getAttribute('init') == 1){
					expand(node.id);
				} else {
					collapse(node.id);
				}	
			}
		}
	}
}

img_expanded  = 'http://www.cof.orst.edu/cof/fr/images/arrow.gif';
img_collapsed = 'http://www.cof.orst.edu/cof/fr/images/arrow2.gif';

function expand(ioNode,cook) {
	ioWedge = "i" + ioNode.substr(1);
	ioButton = "b" + ioNode.substr(1);
	
	if (document.getElementById && document.getElementById(ioNode) != null) {
		if(!cook)setCookie("FR_Nav",ioNode, "expanded", getCTime(), '/', "", '');
		document.getElementById(ioButton).style.borderBottom="0px dotted #ffffff";
		document.getElementById(ioWedge).src=img_collapsed;
		document.getElementById(ioWedge).title='collapse';
		document.getElementById(ioNode).className='expanded';
	}
}

function collapse(ioNode,cook) {
	ioWedge = "i" + ioNode.substr(1);
	ioButton = "b" + ioNode.substr(1);
	
	if (document.getElementById && document.getElementById(ioNode) !=  null) {
		if(!cook)setCookie("FR_Nav",ioNode, "collapsed", getCTime(), '/', "", '');
		document.getElementById(ioButton).style.borderBottom="0px dotted #ffffff";
		document.getElementById(ioWedge).src=img_expanded;
		document.getElementById(ioWedge).title='expand';
		document.getElementById(ioNode).className='collapsed';
	}
}

function ioSwitch(ioNode) {

	if (document.getElementById && document.getElementById(ioNode) !=  null) {
		nodeState = document.getElementById(ioNode).className;
	}

    if (nodeState == 'collapsed') {
		expand(ioNode);
		return 1;
	}

	else {
		collapse(ioNode);
		return 0;
	}
}

function expandAll(divName) 
{
	if (document.getElementsByTagName) {
		var nl = document.getElementsByTagName('div');
		var l = nl.length;
		for (var i=0; i<l;i++) {
			var node = nl.item(i);
			if (node.getAttribute('name') == divName) {
				expand(node.id);	
			}
		}
	}
}

function collapseAll(divName) 
{
	if (document.getElementsByTagName) {
		var nl = document.getElementsByTagName('div');
		var l = nl.length;
		for (var i=0; i<l;i++) {
			var node = nl.item(i);
			if (node.getAttribute('name') == divName) {
				collapse(node.id);	
			}
		}
	}
}



// Cookie functions

function setCookie(cookieName,variable,value,expires,path,domain,secure) {

    // get the value of the cookie
    cookieBodyText = document.cookie;
    newCookie = new String;
    found = 0;

    // find the first = which breaks name from values
    startOfVars = cookieBodyText.indexOf("=") + 1;

    if ( startOfVars > 1 ) {
        // define the new cookie;
        newCookie = cookieBodyText.substring(0,startOfVars-1) + "=";
        result = cookieBodyText.substring(startOfVars);
        result = unescape(result);

        if ( result.charAt(result.length-1) == ";" ) {
            result = result.substr(0,result.length-1);
        }

        rlist = result.split(";");
        for (i=0; i < rlist.length; i++ ) {
            label = rlist[i].split("=");

            if ( label[0] == variable ) {
                label[1] = value;
                found = 1;
            }
            newCookie = newCookie + escape(label[0] + "=" + label[1] + ";");
        }

        if ( found == 0 ) {
            newCookie = newCookie + escape(variable + "=" + value + ";");
        }
    } else {
        newCookie = cookieName + "=" + escape(variable + "=" + value + ";");
    }
    // write the cookie back
    document.cookie = newCookie + ((expires) ? "; expires=" + expires.toGMTString() : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : "");
    return null;
}

function getCookie(requested) {

    // get the value of the cookie
    cookieBodyText = document.cookie;

    // find the first = which breaks name from values
    startOfVars = cookieBodyText.indexOf("=") + 1;
    if ( startOfVars > 1 ) {
        result = cookieBodyText.substring(startOfVars);
        result = unescape(result);

        rlist = result.split(";");
        for (i=0; i<rlist.length; i++ ) {
            label = rlist[i].split("=");
            if ( label[0] == requested ) {
                return label[1];
            }
        }
    }
    return null;
}

function fixDate (date) {
    var base = new Date(0);
    var skew = base.getTime();
    if (skew > 0)
        date.setTime(date.getTime() - skew);
}


function getCTime()
{
    var now = new Date();
    fixDate(now);
    now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
	return now;
}