/**
 * Simple Drop-Down Menu v2.0
 */
var m_closeTimer = null;
var m_divSubitem = null;

// open hidden layer
function m_open(id) {
	// close old layer
	m_close();
	// get new layer and show it
	m_divSubitem = document.getElementById(id);
	if (m_divSubitem) m_divSubitem.style.display = '';
}

// close showed layer
function m_close() {
	// cancel close timer
	m_cancel();
	if (m_divSubitem) {
		m_divSubitem.style.display = 'none';
		m_divSubitem = null;
	}
}

// go close timer
function m_delayClose() {
	// default timeout: 500ms
	m_closeTimer = window.setTimeout(m_close, 500);
}

// cancel close timer
function m_cancel() {
	if (m_closeTimer) {
		window.clearTimeout(m_closeTimer);
		m_closeTimer = null;
	}
}

if (typeof(m_closeTimer) == 'undefined') {
	// close layer when click-out
	if (typeof(window.onclick) != 'function') {
		window.onclick = m_close;
	} else {
		var old_fn = window.onclick;
		window.onclick = function() {
			old_fn();
			m_close();
		}
	}
}

// span-down vertical sub-menu
function m_toggle(el) {
	// find toggle-icon
	var ico = (typeof(el) == 'string') ? document.getElementById(el) : el;
	if (ico && ico.src && ico.parentNode && ico.parentNode.parentNode) {
		// find sub-menu
		var sub = ico.parentNode.parentNode.nextSibling;
		while (sub && (!sub.tagName || sub.tagName.toUpperCase() != 'TR' || sub.className != 'sub'))
			sub = sub.nextSibling;
		if (sub) {
			// toggle bullet-icon
			var s = ico.src;
			ico.src = (s.toLowerCase().indexOf('-expd.') < 0)
					? s.replace(/-coll\./gi, "-expd.") : s.replace(/-expd\./gi, "-coll.");
			// show / hide sub-menu box
			toggle(sub);
		}
	}
}
