function addLoadEvent(func) {
  var oldonload = window.onload;
  if (window.attachEvent) {
	window.attachEvent("onload", func); 
  } else if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

String.prototype.replaceAll=function(s1, s2) { 
	  return this.replace(new RegExp(s1,"g"), s2);
}

Array.prototype.inArray = function(valeur) {
	for (var i in this) {
		if (this[i] === valeur)
			return true;
		}
	return false;
}

navSelect = function() {
	var navEls = document.getElementById("nav").getElementsByTagName("li");
	for (var i=0; i<navEls.length; i++) {
		var hrefEls = navEls[i].getElementsByTagName('a');
		if (!hrefEls[0].className && hrefEls[0].href == document.location) {
			hrefEls[0].className += " selected";
		}
	}
}
navChainSelect = function() {
	if (document.getElementById("nav")) {
		var rootFiles = ['', 'index.htm', 'index.html', 'index.php', 'default.asp', 'default.aspx'];
		var navEls = document.getElementById("nav").getElementsByTagName("li");
		for (var i=0; i<navEls.length; i++) {
			var hrefEls = navEls[i].getElementsByTagName('a');
			if (hrefEls[0]) {
				var loc = document.location.href;
				if (loc.indexOf("#") > -1)
					loc = loc.split("#")[0];
				if (hrefEls[0].href == loc || ( rootFiles.inArray(hrefEls[0].href.substring(hrefEls[0].href.indexOf('/')+1)) && rootFiles.inArray(loc.substring(loc.indexOf('/')+1))  ) ) {
					var thisElm = navEls[i];
					while (thisElm.parentNode) {
						thisElm = thisElm.parentNode;
						if (thisElm.childNodes[0].nodeType==1) {
							thisElm.childNodes[0].className += " selected";
						}
					}
					hrefEls[0].className += " selected";
					return;
				}
			}
		}
	}
}

sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("li");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfHover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfHover\\b"), "");
		}
	}
}


if (typeof $ == 'function') {
	$(document).ready(function(){
		$("ul#nav ul").each(function(i) {

			var ct = $(this).children().size();
			if (ct == 1) {
				$("li", this).addClass("single");
			} else {
				$("li:first-child", this).addClass("first");
				$("li:last-child", this).addClass("last");
			}
		});
						   
		$("ul#nav").superfish({
			animation : {height:"show"},
			speed : 500,
			autoArrows: true,
			dropShadows: false
		});
	});

} else {
	addLoadEvent(sfHover);
}

function imgSwap(fObj,fSrc) {
	elem(fObj).src = fSrc;
}

function imgPreload() {
	var d = document;
	if (document.images) {
		if (!document.arrPreloaded) document.arrPreloaded = new Array();
		var i;
		var j = document.arrPreloaded.length;
		var args = imgPreload.arguments;
		for (i = 0 ; i < args.length ; i++) {
			if (args[i].indexOf("#") != 0) {
				document.arrPreloaded[j] = new Image;
				document.arrPreloaded[j++].src = args[i];
			}
		}
	}
}

function elem(fObj) {
	if (typeof(fObj) == "object") {
		return(fObj);
	} else {
		return(document.getElementById(fObj));
	}
}

function BodyInit() {}


//if (window.attachEvent) window.attachEvent("onload", sfHover); 
addLoadEvent(navChainSelect);
addLoadEvent(BodyInit);	
