function setMenuStates(name, mins)
{
	var ms = new Array();
	var i = 0;
	
	ms[i++] = (document.getElementById('genSub').style.display == 'none') ? 0 : 1;
	ms[i++] = (document.getElementById('clubSub').style.display == 'none') ? 0 : 1;
	ms[i++] = (document.getElementById('swimSub').style.display == 'none') ? 0 : 1;
	ms[i++] = (document.getElementById('memberSub').style.display == 'none') ? 0 : 1;
	ms[i++] = (document.getElementById('rentalSub').style.display == 'none') ? 0 : 1;
	ms[i++] = (document.getElementById('minutesSub').style.display == 'none') ? 0 : 1;
	ms[i++] = (document.getElementById('commSub').style.display == 'none') ? 0 : 1;

	var text = ms.join(",");

//	alert( "set = " + text );
		
	setCookie( name, text, getExpDate( 30, 0, mins), "/");
}


function getMenuStates(name)
{
	var ms = getCookie( name );
	var states = ms.split(",");
	var i = 0;

//	alert( "get = " + states );
		
	setSubMenu(this, 'genSub', (states[i++] == 1)? "expanded" : "collapsed" );
	setSubMenu(this, 'clubSub', (states[i++] == 1)? "expanded" : "collapsed" );
	setSubMenu(this, 'swimSub', (states[i++] == 1)? "expanded" : "collapsed" );
	setSubMenu(this, 'memberSub', (states[i++] == 1)? "expanded" : "collapsed" );
	setSubMenu(this, 'rentalSub', (states[i++] == 1)? "expanded" : "collapsed" );
	setSubMenu(this, 'minutesSub', (states[i++] == 1)? "expanded" : "collapsed" );
	setSubMenu(this, 'commSub', (states[i++] == 1)? "expanded" : "collapsed" );
}

function setSubMenu(target, subMenu, setstate)
{
	var Lname;
	Lname = "L"+subMenu;

	var e  = document.getElementById(Lname);
	if ( e == null )
		return;
	
	var cname = e.className;

	var e1 = document.getElementById(subMenu);

	if ( setstate == 'collapsed' ) {
		e.className = cname.split(" ")[0] + ' collapsed';
		e1.style.display = 'none';
	}
	else {
		e.className = cname.split(" ")[0] + ' expanded';
		e1.style.display = 'block';
	}
}

function toggleSubMenu(target, subMenu) {
	if (document.getElementById(subMenu).style.display == 'none') {
		var cname = target.className;
		target.className = cname.split(" ")[0] + ' expanded';
		document.getElementById(subMenu).style.display='block';
	} else {
		var cname = target.className;
		target.className = cname.split(" ")[0] + ' collapsed';
		document.getElementById(subMenu).style.display='none';
	}
//alert(target.className);
}


/* cookies.js */
/*
     Example File From "JavaScript and DHTML Cookbook"
     Published by O'Reilly & Associates
     Copyright 2003 Danny Goodman
*/

// utility function to retrieve a future expiration date in proper format;
// pass three integer parameters for the number of days, hours,
// and minutes from now you want the cookie to expire; all three
// parameters required, so use zeros where appropriate
function getExpDate(days, hours, minutes) {
    var expDate = new Date();
    if (typeof days == "number" && typeof hours == "number" && typeof hours == "number") {
        expDate.setDate(expDate.getDate() + parseInt(days));
        expDate.setHours(expDate.getHours() + parseInt(hours));
        expDate.setMinutes(expDate.getMinutes() + parseInt(minutes));
        return expDate.toGMTString();
    }
}

// utility function called by getCookie()
function getCookieVal(offset) {
    var endstr = document.cookie.indexOf (";", offset);
    if (endstr == -1) {
        endstr = document.cookie.length;
    }
    return unescape(document.cookie.substring(offset, endstr));
}

// primary function to retrieve cookie by name
function getCookie(name) {
    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen) {
        var j = i + alen;
        if (document.cookie.substring(i, j) == arg) {
            return getCookieVal(j);
        }
        i = document.cookie.indexOf(" ", i) + 1;
        if (i == 0) break; 
    }
    return null;
}

// store cookie value with optional details as needed
function setCookie(name, value, expires, path, domain, secure) {
    document.cookie = name + "=" + escape (value) +
        ((expires) ? "; expires=" + expires : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

// remove the cookie by setting ancient expiration date
function deleteCookie(name,path,domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}