var menu = (function () {
	var t = 15,
		z = 50,
		s = 3,
		a;

	function dd(n) {
		this.n = n;
		this.h = [];
		this.c = [];
	}
	dd.prototype.init = function (p, c) {
		a = c;
		var w = document.getElementById(p),
			s = w.getElementsByTagName('ul'),
			l = s.length,
			i = 0,
			h;
		for (i; i < l; i++) {
			h = s[i].parentNode;
			this.h[i] = h;
			this.c[i] = s[i];
			h.onmouseover = new Function(this.n + '.st(' + i + ',true)');
			h.onmouseout = new Function(this.n + '.st(' + i + ')');
		}
	};
	
	function sl(c, f) {
		var h = c.offsetHeight,
			d, 
			o;
		if ((h <= 0 && f !== 1) || (h >= c.mh && f === 1)) {
			if (f === 1) {
				c.style.filter = '';
				c.style.opacity = 1;
				c.style.overflow = 'visible';
			}
			clearInterval(c.t);
			return;
		}
		d = (f === 1) ? Math.ceil((c.mh - h) / s) : Math.ceil(h / s);
		o = h / c.mh;
		c.style.opacity = o;
		c.style.filter = 'alpha(opacity=' + (o * 100) + ')';
		c.style.height = h + (d * f) + 'px';
	}
	
	dd.prototype.st = function (x, f) {
		var c = this.c[x],
			h = this.h[x],
			p = h.getElementsByTagName('a')[0];
		clearInterval(c.t);
		c.style.overflow = 'hidden';
		if (f) {
			p.className += ' ' + a;
			if (!c.mh) {
				c.style.display = 'block';
				c.style.height = '';
				c.mh = c.offsetHeight;
				c.style.height = 0;
			}
			if (c.mh === c.offsetHeight) {
				c.style.overflow = 'visible';
			} else {
				c.style.zIndex = z;
				z++;
				c.t = setInterval(function () {
					sl(c, 1);
				}, t);
			}
		} else {
			p.className = p.className.replace(a, '');
			c.t = setInterval(function () {
				sl(c, -1);
			}, t);
		}
	};


	return {
		dd: dd
	};
}());

function cs() {
	//size width of sub links to match top menu item
	var div01 = document.getElementById('menu'),
		linkArray = div01.getElementsByTagName('li'),
		menuWidths = [],
		menuItem,
		menuHeight,
		i = 0,
		j = 0;
	
	for (i = 0; i < linkArray.length; i++) {
		menuWidths[i] = linkArray[i].offsetWidth;
		if (menuWidths[i] === 0) {
			menuWidths.splice(i, 1, menuWidths[i - 1]);
		}
	}
	
	for (j = 0; j < linkArray.length; j++) {
		linkArray[j].style.width = (menuWidths[j]) + 'px';
	}
	
	//size height of navigation bar
	menuItem = document.getElementById('menu').firstChild;
	while (menuItem.nodeType !== 1) {
		menuItem = menuItem.nextSibling;
	}
	menuHeight = menuItem.offsetHeight;
	document.getElementById('menu').style.height = menuHeight + 'px';
}
	



