﻿// JavaScript Document
/*
\\ Transaction Framework
\\ Coded & Maintained by: Scott Crowley
\\ All code & concepts 2010 SC Designs
\\ v1.5 05/01/2011
*/
function addLiEvents(id) {
	var ulEl = document.getElementById(id);
	if (ulEl === null) return;
	var tmp = "menuArr = menuLinks_"+id;
	eval(tmp)
	var cnt = menuArr.length;
	var allLis = ulEl.getElementsByTagName('li');
	for (c=0;c<cnt;c++) {
		eval('tmpLink = menuLinks_'+id+'[c]');
		addEvntHndlr(allLis[c],'TS_goToURL','click',tmpLink);
	}
}
function addSubMenuEvents(id) {
	var ulEl = document.getElementById(id);
	if (ulEl === null) return;
	var subULs = ulEl.getElementsByTagName('ul');
	var ulCnt = subULs.length;
	for (c=0;c<ulCnt;c++) {
		var noJS = false;
		var smCls = subULs[c].className;
		if (smCls != '' && smCls.match(/ts_noJS/) != null) noJS = true;
		if (noJS === false) {
			var parentLI = subULs[c].parentNode;
			addEvntHndlr(parentLI,'changeSubMenuState','mouseover','this','over');
			addEvntHndlr(parentLI,'changeSubMenuState','mouseout','this','out');
		}
	}
}
function changeSubMenuState(el,state) {
	var subULs = el.getElementsByTagName('ul');
	if (subULs === null) return;
	var subUL = subULs[0];
	if (state == 'over') subUL.style.left = 'auto';
	else if (state == 'out') subUL.style.left = '-1000em';
}
function addJQMenuEvents(id) {
	var $ul = TS_JQ('#'+id);
	var clr = $ul.find('li:not(.menuCurrent)').css('color'); //need to do color change since of the way inheritance works with ui-state-active
	$ul.find('li.menuCurrent').each(function() { var vert=TS_JQ(this).parent().hasClass('ts_menuVertical_jq'); var nxt=(vert)?'border-top-width':'border-left-width'; var prv=(vert)?'border-bottom-width':'border-right-width'; TS_JQ(this).addClass('ui-state-active').css({ 'border-width':'1px' }).next().css(nxt,'0px').end().prev().css(prv,'0px'); TS_JQ(this).find('li:not(.menuCurrent) a').css('color',clr); });
	$ul.find('li').hover(function() { TS_JQ(this).toggleClass('ui-state-hover'); }).mousedown(function() { if (!TS_JQ(this).hasClass('menuCurrent')) TS_JQ(this).addClass('ui-state-active'); }).mouseup(function() { if (!TS_JQ(this).hasClass('menuCurrent')) TS_JQ(this).removeClass('ui-state-active'); });
	$ul.find('ul').not('.ts_noJS').parent().hover(function() { TS_JQ(this).find('ul:eq(0)').toggleClass('showMenu'); });
}
