// JavaScript Utilities

function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			oldonload();
			func();
		}
	}
}

function externalLinks() {
	if (!document.getElementsByTagName) return;
	var anchors = document.getElementsByTagName("a");
	for (var i=0; i<anchors.length; i++) {
		var anchor = anchors[i];
		if (anchor.getAttribute("href") && 
			anchor.getAttribute("rel") == "external") 
		anchor.target = "_blank";
		}
	}

function insertAfter(newElement,targetElement) {
	var parent = targetElement.parentNode;
	if (parent.lastChild == targetElement) {
		parent.appendChild(newElement);
	} else {
		parent.insertBefore(newElement,targetElement.nextSibling);
	}
}

function addClass(element,value) {
	if (!element.className) {
		element.className = value;
	} else {
		newClassName = element.className;
		newClassName+= " ";
		newClassName+= value;
		element.className = newClassName;
	}
}

function getElementsByClass(node,searchClass,tag) {
	var classElements = new Array();
	var els = node.getElementsByTagName(tag); // use "*" for all elements
	var elsLen = els.length;
	var pattern = new RegExp("\\b"+searchClass+"\\b");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

// This function sets the class of detail divs to "hidden"
function setClass () {
	var el = getElementsByClass(document,"print","div");
	for ( var i=0; i < el.length; i++) {
		el[i].className = "hidden";
	}
}

// show/hide divs
function showHide(divName) {
	if(!document.getElementById) return false;
	var div = document.getElementById(divName);
	if (div.className == "rollover") {
		div.className = "hidden";
	} else {
		div.className = "rollover";
	}
}

// popup function
function popup(mypage, myname, w, h, scroll, resize) {
  var winl = (screen.width - w) / 2;
  var wint = (screen.height - h) / 2;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resize='+resize+''
	win = window.open(mypage, myname, winprops)
  if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}

function resizeOuterTo(w,h) {
 if (parseInt(navigator.appVersion)>3) {
   if (navigator.appName=="Netscape") {
    top.outerWidth=w;
    top.outerHeight=h;
   }
   else top.resizeTo(w,h);
 }
}

// window close function
function closeWin() {
	window.close();
}

// load events
addLoadEvent(externalLinks);
addLoadEvent(setClass);
