// JavaScript Document
/*
*	File: 			menu_functions.js
*	Author: 		Peggy Resar
*	Purpose:		Javascript functions for expanding/collapsing menus on web site
*
*	History:
*	Date			By				Comments
*	--------- 		----------		--------------------------------
*	02/21/07		Peggy Resar		Initial creation
*
*
*/
<!-- Original:  Fredrik Fridsten (fredrik.fridsten@home.se) -->
<!-- Web Site:  http://hem.passagen.se/dred -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!--
// ADDITIONAL NOTES
// The input variables to the toggle function are the number of the submenu to open/close,
// starting with 0, and the number of pixels to move the objects below.
// For example toggle(1,60) opens/closes the second submenu and moves the objects below 60 pixels.

var nom = 14; // Number of menus
var usePictures = 0; // use pictures?  1 = yes, 0 = no

var ttls = new Array(); // An array for the title objects
var ttlstxt = new Array(); // An array for the title text objects
var subs = new Array(); // An array for the submenu objects
var tops = new Array(0, 97, 129, 161, 193, 225, 257, 295, 333, 390, 402, 434, 466, 498); // An array for the top pixel of menu objects
var lastn;
var lastmove;

if (document.getElementById) {
	visible = 'visible';
	hidden = 'hidden';
}
else
	if (document.all) {
		visible = 'visible';
		hidden = 'hidden';
	}
// initailize arrays with object ids
for (var i = 0; i <= nom; i++) {
	ttls[i] = ('title' + i);
	subs[i] = ('submenu' +i);
	ttlstxt[i] = ('titletext' + i);
}

lastn = (nom + 1);
lastmove = 0;

function lasttoggle(n,move) {
	if (n <= nom) {
		menu = ('submenu' + n);
	if (document.layers) {
		submenu = document.layers[menu];
	}
		else if (document.all) {
			submenu = document.all(menu).style;
		}
		else if (document.getElementById) {
			submenu = document.getElementById(menu).style;
		}
	// untoggle menu option - hide submenu, alter color to black
	if (submenu.visibility == visible) {
		submenu.visibility = hidden;
		if (document.layers) {
			document.layers[ttlstxt[n]].style.color = "000000";
		}
		else if (document.all) {
			document.all(ttlstxt[n]).style.color = "000000";
		}
		else if (document.getElementById) {
		 	document.getElementById(ttlstxt[n]).style.color = "000000";
		}
		// move items below collapsed option back to original positions
		for (var i = (n+1); i <= nom; i++) {
			if (document.layers) {
				document.layers[ttls[i]].top -= move;
				document.layers[subs[i]].top -= move;
			}
			else if (document.all) {
				document.all(ttls[i]).style.pixelTop -= move;
				document.all(subs[i]).style.pixelTop -= move;
				}
			 else if (document.getElementById) {
			 	document.getElementById(ttls[i]).style.top = tops[i];
			 	document.getElementById(subs[i]).style.top = tops[i+1];
			 }
			}
		  }
	   }
	}

function toggle(n,move) {
	menu = ('submenu' + n);
	if (document.layers) {
		submenu = document.layers[menu];
	}
	else if (document.all) {
		submenu = document.all(menu).style;
	}
	else if (document.getElementById) {
		submenu = document.getElementById(menu).style;
	}
	// if currently visible, then hide
	if (submenu.visibility == visible) {
		submenu.visibility = hidden;
		if (document.layers) {
			document.layers[ttlstxt[n]].style.color = "000000";
		}
		else if (document.all) {
			document.all(ttlstxt[n]).style.color = "000000";
		}
		else if (document.getElementById) {
		 	document.getElementById(ttlstxt[n]).style.color = "000000";
		}
		for (var i = (n+1); i <= nom; i++) {
			if (document.layers) {
				document.layers[ttls[i]].top -= move;
				document.layers[subs[i]].top -= move;
			}
			else if (document.all) {
				document.all(ttls[i]).style.pixelTop -= move;
				document.all(subs[i]).style.pixelTop -= move;
			  }
			else if (document.getElementById) {
			 	document.getElementById(ttls[i]).style.top = tops[i];
			 	document.getElementById(subs[i]).style.top = tops[i+1];
			}
		}
	}
	// if currently hidden, make visible
	else {
		submenu.visibility = visible;
		// alter color of selected menu option
		if (document.layers) {
			document.layers[ttlstxt[n]].style.color = "33999F";
		}
		else if (document.all) {
			document.all(ttlstxt[n]).style.color = "33999F";
		}
		else if (document.getElementById) {
		 	document.getElementById(ttlstxt[n]).style.color = "33999F";
		}
		// if currently toggled menu option was not the last one, untoggle the last one
		if (lastn != n) {
			lasttoggle(lastn,lastmove);
		}
		// push down menu options below selected item
		for (var i = (n+1); i <= nom; i++) {
			if (document.layers) {
				document.layers[ttls[i]].top += move;
				document.layers[subs[i]].top += move;
			}
			else if (document.all) {
				document.all(ttls[i]).style.pixelTop += move;
				document.all(subs[i]).style.pixelTop += move;
			}
			else if (document.getElementById) {
			 	document.getElementById(ttls[i]).style.top = tops[i] + move;
			 	document.getElementById(subs[i]).style.top = tops[i+1] + move;
			}
		}
	}
	lastn = n;
	lastmove = move;
}
-->
