if (!Array.prototype.push) Array.prototype.push = function() {for (var i=0; i<arguments.length; i++) this[this.length] = arguments[i];return this.length;}
Array.prototype.find = function(value, start) {start = start || 0;for (var i=start; i<this.length; i++)
if (this[i]==value)
return i;return -1;}
Array.prototype.has = function(value) {return this.find(value)!==-1;}
function map(list, func) {var result = [];func = func || function(v) {return v};for (var i=0; i < list.length; i++) result.push(func(list[i], i, list));return result;}
function filter(list, func) {var result = [];func = func || function(v) {return v};map(list, function(v) { if (func(v)) result.push(v) } );return result;}
function getElem(elem) {if (document.getElementById) {if (typeof elem == "string") {elem = document.getElementById(elem);if (elem===null) throw 'cannot get element: element does not exist';} else if (typeof elem != "object") {throw 'cannot get element: invalid datatype';}} else throw 'cannot get element: unsupported DOM';return elem;}
function hasClass(elem, className) {return getElem(elem).className.split(' ').has(className);}
function getElementsByClass(className, tagName, parentNode) {parentNode = !isUndefined(parentNode)? getElem(parentNode) : document;if (isUndefined(tagName)) tagName = '*';return filter(parentNode.getElementsByTagName(tagName),function(elem) { return hasClass(elem, className) });}
function listen(event, elem, func) {elem = getElem(elem);if (elem.addEventListener)
elem.addEventListener(event,func,false);else if (elem.attachEvent)
elem.attachEvent('on'+event, function(){ func(new W3CDOM_Event(elem)) } );else throw 'cannot add event listener';}
function mlisten(event, elem_list, func) {map(elem_list, function(elem) { listen(event, elem, func) } );}
function W3CDOM_Event(currentTarget) {this.currentTarget  = currentTarget;this.preventDefault = function() { window.event.returnValue = false }
return this;}
function isUndefined(v) {var undef;return v===undef;}
var _POPUP_FEATURES = '';function raw_popup(url, target, features) {if (isUndefined(features)) features = _POPUP_FEATURES;if (isUndefined(target)) target   = '_blank';var theWindow = window.open(url, target, features);theWindow.focus();return theWindow;}
function link_popup(src, features) {return raw_popup(src.getAttribute('href'), src.getAttribute('target') || '_blank', features);}


function setCurrentNav(){
	var location = window.location.toString();
	var links = document.getElementById("partsnav").getElementsByTagName("a");
	var parentLis = document.getElementById("partsnav").getElementsByTagName("li");
	for(var i=0; i<parentLis.length; i++){
		if ( parentLis[i].className=="current")
			return;
	}
	for(i=0; i<links.length; i++){
		if ( links[i].href.indexOf(location) !=-1)
			break;
	}
	
	if (i<links.length){
		var s = document.createElement("span");
		var parentLi = links[i].parentNode;
		for(var j=0;j<links[i].childNodes.length; j++){
			var child = links[i].childNodes[j].cloneNode(true);
			s.appendChild(child);
		}
	
		parentLi.replaceChild(s,links[i]);
		// prevent wrapping of current page in secondary nav
		
		parentLi.className = "current";
	}
	
	
}

var n = 0;
function initNav()
{	
	var c = false;
	
	n++;
	if(n>60) return;
	if(typeof document.getElementById != 'undefined')
	{
		if(document.getElementById("partsnav") != null)
			c = true; 
		if(c) {  setCurrentNav(); }
		else { setTimeout("initNav()",200);};
	}

}

initNav();