var menuState = {TS:'dn',CM:'dn',SU:'dn',GD:'dn' };

function openPG (theURL,winName,features) { //v2.0
//  var newWindow = window.open(theURL,winName,features);
//  newWindow.focus();
	document.location.target='plangarden';
	document.location.href=theURL; 
}

function openShare(shareName){
	window.open('/app/index.php?userID='+shareName,'Shared_Garden','width=1024,height=768,resizable=yes,scrollbars=yes')
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
	window.open(theURL,winName,features);
}
function initMenu () {
	var allcookies = document.cookie;

	var pos = allcookies.indexOf("pgMenu=");
	if (pos != -1) {
		var start= pos +7;
		var end = allcookies.indexOf(";",start);
		if (end==-1) end = allcookies.length;
		var value = allcookies.substring(start,end);
		value = unescape(value);
		//alert ('cookieValue='+value);

		value.match('TSup') ? menuState['TS'] = 'up' : menuState['TS'] = 'dn';
		value.match('CMup') ? menuState['CM'] = 'up' : menuState['CM'] = 'dn';
		value.match('SUup') ? menuState['SU'] = 'up' : menuState['SU'] = 'dn';
		value.match('GDup') ? menuState['GD'] = 'up' : menuState['GD'] = 'dn';
	} else {
		//alert ('noCookie');
	}
}
//function objectBurp( obj) {
//	var string = '';
//	for (x in obj) {
//		string += x+" = "+obj[x]+"\n";
//	}
//	alert (string);
//}
function initHideMenu (menuObject) {

	var targetClass = 'rollup';
	var b = menuObject;

	var p = b.parentNode;

	var c = p.className;
	if ( typeof c == "undefined") return; //no matches found
	while(!inClassList(c, targetClass))	{
		b = p;
		p = p.parentNode;
		c = p.className
		if ( typeof c == "undefined") return; //no matches found
	}
	var matches = p.childNodes;
	var len = matches.length;
	var cancel = false;
	for ( var i=0; i < len; i++ ) {
	 if ( matches[i].nodeType == 1 && matches[i] != b ) {
		if ( isFalse( toggleClass(matches[i], toggleClass, 'hidden') ) )
		{ cancel = true; }
	 }
	}
	if (cancel) { doDefaultAction(e, false); }
}

function initPage() {

  /* MENU */
  assignEvent( 'click',     '*.menu',
                applyToDescendants, '*.dropdown', toggleClass, "hidden" );

  assignEvent( 'mouseover', '*.menu',
                applyToDescendants, '*.dropdown', removeClass, "hidden" );

  assignEvent( 'mouseout',  '*.menu',
                applyToDescendants, '*.dropdown', addClass,    "hidden" );



  assignEvent( 'mouseover', '*.menu li, *.menu h3',
                applyToThis, null, addClass,    "hover" );

  assignEvent( 'mouseout',  '*.menu li, *.menu h3',
                applyToThis, null, removeClass, "hover" );



  assignEvent( 'mouseover', '*.menu li.flyout-trigger',
                applyToDescendants, '> *.submenu', removeClass, "hidden" );

  assignEvent( 'mouseout',  '*.menu li.flyout-trigger',
                applyToDescendants, '> *.submenu', addClass,    "hidden" );

  /* ROLLUP */
  assignEvent( 'click', '*.rollup-trigger',
                applyToChildrenOfAncestorWithClass, 'rollup',
                toggleClass, 'hidden'  );

  assignEvent( 'click', '*.rollup-trigger', applyToThis, null,
                toggleClass, 'rolledup'  );

  /* TABS */

  assignEvent( 'click',     'ul.tabs li',
                applyToChildrenOfAncestorWithClass, 'tabs',
                removeClass, 'selected' );

  assignEvent( 'click',     'ul.tabs li',
                applyToThis, null, addClass, 'selected' );

  assignEvent( 'mouseover', 'ul.tabs li *.tab-label',
                applyToThis, null, addClass,    'hover' );

  assignEvent( 'mouseout',  'ul.tabs li *.tab-label',
                applyToThis, null, removeClass, 'hover' );
  initMenu ();
}

addEvent(window,'unload',purgeAllEvents);
addEvent(window,'load',initPage);

