var exclude=1;
var agt=navigator.userAgent.toLowerCase();
var win=0;var mac=0;var lin=1;
if(agt.indexOf('win')!=-1){win=1;lin=0;}
if(agt.indexOf('mac')!=-1){mac=1;lin=0;}
var lnx=0;if(lin){lnx=1;}
var ice=0;
var ie=0;var ie4=0;var ie5=0;var ie6=0;var com=0;var dcm;
var op5=0;var op6=0;var op7=0;
var ns4=0;var ns6=0;var ns7=0;var mz7=0;var kde=0;var saf=0;
if(typeof navigator.vendor!="undefined" && navigator.vendor=="KDE"){
	var thisKDE=agt;
	var splitKDE=thisKDE.split("konqueror/");
	var aKDE=splitKDE[1].split("; ");
	var KDEn=parseFloat(aKDE[0]);
	if(KDEn>=2.2){
		kde=1;
		ns6=1;
		exclude=0;
		}
	}
else if(agt.indexOf('webtv')!=-1){exclude=1;}
else if(typeof window.opera!="undefined"){
	exclude=0;
	if(/opera[\/ ][5]/.test(agt)){op5=1;}
	if(/opera[\/ ][6]/.test(agt)){op6=1;}
	if(/opera[\/ ][7-9]/.test(agt)){op7=1;}
	}
else if(typeof document.all!="undefined"&&!kde){
	exclude=0;
	ie=1;
	if(typeof document.getElementById!="undefined"){
		ie5=1;
		if(agt.indexOf("msie 6")!=-1){
			ie6=1;
			dcm=document.compatMode;
			if(dcm!="BackCompat"){com=1;}
			}
		}
	else{ie4=1;}
	}
else if(typeof document.getElementById!="undefined"){
	exclude=0;
	if(agt.indexOf("netscape/6")!=-1||agt.indexOf("netscape6")!=-1){ns6=1;}
	else if(agt.indexOf("netscape/7")!=-1||agt.indexOf("netscape7")!=-1){ns6=1;ns7=1;}
	else if(agt.indexOf("gecko")!=-1){ns6=1;mz7=1;}
	if(agt.indexOf("safari")!=-1 || (typeof document.childNodes!="undefined" && typeof document.all=="undefined" && typeof navigator.taintEnabled=="undefined")){mz7=0;ns6=1;saf=1;}
	}
else if((agt.indexOf('mozilla')!=-1)&&(parseInt(navigator.appVersion)>=4)){
	exclude=0;
	ns4=1;
	if(typeof navigator.mimeTypes['*']=="undefined"){
		exclude=1;
		ns4=0;
		}
	}
if(agt.indexOf('escape')!=-1){exclude=1;ns4=0;}
if(typeof navigator.__ice_version!="undefined"){exclude=1;ie4=0;}

addLoadListener(function() { CreateCatMenu();});

var branch;
var Lvl;
function addLoadListener(fn)
{
	if(typeof window.addEventListener != 'undefined')
	{
		window.addEventListener('load',fn,false);
	}
	else if (typeof document.addEventListener != 'undefined')
	{
		document.addEventListener('load',fnn, false);
	}
	else if (typeof window.attachEvent != 'undefined')
	{
		window.attachEvent('onload', fn);
	}
	else
	{
		var oldfn = window.onload;
		if(typeof window.onload != 'function')
		{
			window.onload = fn;
		}
		else
		{
			window.onload = function()
			{
				oldfn();
				fn();
			};
		}
	}
}

function attachEventListener(target, eventType, functionRef, capture)
{
	if(typeof target.addEventListener != "undefined")
	{
		target.addEventListener(eventType, functionRef, capture);
	}
	else if (typeof target.attachEvent != "undefined")
	{
		target.attachEvent("on" + eventType, functionRef);
	}
	else
	{
		eventType = "on" + eventType;
		
		if(typeof target[eventype] == "function")
		{
			var oldListener = target[eventType];
			
			target[eventType] = function()
			{
				oldListener();
				
				return functionRef();
			};
		}
		else
		{
			target[eventType] = functionRef;
		}
	}
}
function getURLParam(strParamName){
  var strReturn = "";
  var strHref = window.location.href;
  if ( strHref.indexOf("?") > -1 ){
    var strQueryString = strHref.substr(strHref.indexOf("?")).toLowerCase();
    var aQueryString = strQueryString.split("&");
    for ( var iParam = 0; iParam < aQueryString.length; iParam++ ){
      if ( 
aQueryString[iParam].indexOf(strParamName.toLowerCase() + "=") > -1 ){
        var aParam = aQueryString[iParam].split("=");
        strReturn = aParam[1];
        break;
      }
    }
  }
  return unescape(strReturn);
} 
function CheckCategory()
{
	var searchval = getURLParam('Category');
	if(searchval != '')
		return(searchval);
	else
	{
		searchval = getURLParam('Cat');
		if(searchval != '')
			return(searchval);
		else
			return 'NonBrowse';
	}
}

function CreateCatMenu()
{
	var dispL = 'MenuList';
	//var menuColours = ['#c7aad1','#a6c69f','#2fbced','#a5cf4e','#f99d1c','#ed1c24','#0f75bc','#009290','#7f3f98','#c7aad1','#e64d39','#00a651','#2e6ab3','#b6c83e','#b6558f','#a54399','#679aca','#ed1c24'];
	var dispVals = '';
	var Count = 0;
	var dynamicMU = '';
	Lvl = 1;
	var currMenu = CheckCategory().toString().toUpperCase();
	dynamicMU += '<div id="LeftNav" style="height:'+((NumFirstLvlItems+1)*20)+'px"><ul id="navigation" class="vertical">';
	for(var i=1;i<=NumFirstLvlItems;i++)
	{
		dispL = 'MenuList' + i;
		dispVals = window[dispL.split(',')];
		NumSubs1 = dispVals[1];
		Count++;
		if(NumSubs1 > 0)
		{
			dynamicMU += '<div style="bakcground-color:#ffffff;font-size:1px;height:1px;"> </div><div class="divNotSelected" style="background-color:#8b8476;padding-left:5px;text-transform:uppercase;" id="'+dispVals[2]+'parentDiv"><a href="ProductDisplay.aspx?Category=' + dispVals[2] + '" id="'+dispVals[2]+'" style="font-weight:bold;font-size:10pt;">' + dispVals[0] + '</a></div>';
			// dynamicMU += '<div style="background-color:#ebebe2;margin-right:-5px;"><ul id="'+dispVals[2]+'Sub" numSubs="'+NumSubs1+'">'
			dynamicMU += '<div style="background-color:#ebebe2;margin-right:-10px;width:180px;"><ul id="'+dispVals[2]+'Sub" numSubs="'+NumSubs1+'">' // TF: Added width to fix FF issue
			// alert ('Drop down called' + NumSubs1); /* TF */
			dispL = 'MenuList'+Count;
			Lvl = 2;
			dynamicMU = CreateCatListItems(Count,dynamicMU,NumSubs1,dispL);
			dynamicMU += '</ul></div>';
			Lvl = 1;
			// * Use this to determine height alert (NumSubs1);
			// document.getElementById('CatMenu').style.height = '400px';			
		}
		else
		{
			dynamicMU += '<li><a href="ProductDisplay.aspx?Category=' + dispVals[2] + '" id="' + dispVals[2] + '" stlye="color:#ffffff;">' + dispVals[0] + '</a>';
		}
		//dynamicMU += '</div>';
	}
	dynamicMU += '</ul></div>';
	var insHTML = document.getElementById('CatMenu');
	if(saf)
	{
		insHTML.innerHTML=insHTML.innerHTML + dynamicMU;
	}
	else
	{
		insHTML.insertAdjacentHTML('beforeEnd',dynamicMU);
	}
	dropdownCatMenu('navigation');
	openMenuOnLoad(currMenu);
	return;
}

function CreateCatListItems(itemNum, dynamicMU, NumSubs,dispL)
{
	//dispL += itemNum;
	var dispVals;
	var Count = 0;
	for(var i=1;i<=NumSubs;i++)
	{
		Count++;
		dispL += '_' + i;
		dispVals = window[dispL.split(',')];
		var NumSubs2 = dispVals[1];
		if(NumSubs2 > 0)
		{
			dynamicMU += '<li><a href="ProductDisplay.aspx?Category=' + dispVals[2] + '" id="'+dispVals[2]+'">' + dispVals[0] + '</a>';
			dynamicMU += '<ul id="'+dispVals[2]+'Sub" numSubs="'+NumSubs2+'" style="margin-right:-5px;">'
			//var StrEnd = dispL.lastIndexOf("_");
			//dispL = dispL.slice(0,StrEnd);
			//alert(dispL);
			dynamicMU = CreateCatListItems(Count,dynamicMU,NumSubs2,dispL);
			dynamicMU += '</ul>';			
		}
		else
		{
			dynamicMU += '<li><a href="ProductDisplay.aspx?Category=' + dispVals[2] + '" id="' + dispVals[2] + '" style="background:transparent url(../../images/TemplateImages/me2_bullet_01_dot.gif) left center no-repeat !important;padding-left:10px !important;">' + dispVals[0] + '</a>';
		}
		dynamicMU += '</li>';
		var StrEnd = dispL.lastIndexOf("_");
		dispL = dispL.slice(0,StrEnd);
	}
	return dynamicMU;
}
function toProperCase(s)
{
  return s.toLowerCase().replace(/^(.)|\s(.)/g, 
          function($1) { return $1.toUpperCase(); });
}
function dropdownCatMenu(navid)
{
	var isie = (typeof document.all != 'undefined' && typeof window.opera == 'undefined' && navigator.vendor != 'KDE');
	if (typeof document.getElementById == 'undefined' || (navigator.vendor == 'Apple Computer, Inc.' && typeof window.XMLHttpRequest == 'undefined') || (isie && typeof document.uniqueID == 'undefined'))
	{
		return;	
	}
	
	var rollover = new Image;
	rollover.src = 'images/right_black.gif';
	
	var tree = document.getElementById('navigation');
	if(saf)
	{
		var tree = document.getElementById('CatMenu');		
	}
	if(tree)
	{		
		branch = tree;
		var items = document.getElementsByTagName('li');		
		for (var i=0; i <items.length; i++)
		{
			dropdownCatTrigger(tree, items[i],navid,isie);	
		}
	}
}

function dropdownCatTrigger(tree, li, navid, isie)
{
	var opentime, closetime;
	var a = li.getElementsByTagName('a').length >0 ? li.getElementsByTagName('a')[0] : null;
	var menu = li.getElementsByTagName('ul').length > 0 ? li.getElementsByTagName('ul')[0] : null;
	var horiz = tree.className.indexOf('horizontal') != -1;
	var issub = li.parentNode.id == navid;	
	if(menu)
	{
		li.className += (li.className == '' ? '' : ' ') + 'hasmenu';
	}
	attachEventListener(li,'mouseover',function(e)
	{
		if (unwantedCatTextEvent()){return;}
		clearTimeout(closetime);
		if (branch == li){ branch = null; }
		if(a){
		a.className += (a.className == '' ? '' : ' ') + 'rollover';
			if(menu)
			{
				opentime = window.setTimeout(function()
				{
					if(branch)
					{
						clearCatMenus(branch);
						branch = null;
					}
					menu.style.left = horiz ? (isie ? li.offsetLeft + 'px' : 'auto') : '0';
					menu.style.top = horiz && issub ? (isie ? a.offsetHeight + 'px' : 'auto') : (isie ? li.offsetTop + 'px' : '0');
					if(saf)
					{
						menu.style.left = horiz ? 'auto' : '0';
						menu.style.top = horiz ? 'auto' : '0';
					}
				},50);
			}
		}
	},false);
	attachEventListener(li, 'mouseout', function(e)
	{
		if (unwantedCatTextEvent()){return;}
		var related = typeof e.relatedTarget != 'undefined' ? e.relatedTarget : e.toElement;
		if(!li.contains(related))
		{
			clearTimeout(opentime);
			branch = li;
			if(a){
			a.className = a.className.replace(/ ?rollover/g, '');
				if(menu)
				{
					closetime = window.setTimeout(function()
					{
						if(saf)
						{
							//menu.style.display='none';
						}
						else
						{
							//menu.style.left='-200em';
						}
					},300);
				}
			}
		}
	}, false);
	
	if(!isie)
	{
		li.contains = function(node)
		{
			if (node == null){ return false; }
			if (node == this){ return true; }
			else { return this.contains(node.parentNode); }
		};
	}
}

function clearCatMenus(root)
{
	var menus = root.getElementsByTagName('ul');
	for (var i = 0; i < menus.length; i++)
	{
		menus[i].style.left =  '-200em';
	}
}

function unwantedCatTextEvent()
{
	return (navigator.vendor == 'Apple Computer, Inc.' && (event.target == event.relatedTarget.parentNode || (event.eventPhase == 3 && event.target.parentNode == event.relatedTarget)));
};

function isNumeric(strString)
   //  check for valid numeric strings	
{
	var strValidChars = "0123456789.-";
	var strChar;
	var blnResult = true;

	if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
	for (i = 0; i < strString.length && blnResult == true; i++)
	{
		strChar = strString.charAt(i);
		if (strValidChars.indexOf(strChar) == -1)
		{
			blnResult = false;
		}
	}
	return blnResult;
}





