function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			oldonload();
			func();
		}
	}
} //borrowed from http://simon.incutio.com/archive/2004/05/26/addLoadEvent/


function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
} //borrowed from http://www.dustindiaz.com/getelementsbyclass/


function insertAfter(newNode, referenceNode) {
	referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
}


function externalLinks() {
	var links = document.getElementsByTagName('a');
	for (var i=0; i<links.length; i++) {
		var link = links[i];
		if (link.getAttribute('href') && link.getAttribute('rel') == 'external') {
			if (link.getAttribute('title')) {
				linkTitle = link.getAttribute('title')+ ' ';
			} else {
				linkTitle = '';
			}
			link.setAttribute('title',linkTitle+'(new window)');
			link.setAttribute('target',link.getAttribute('rel'));
			link.style.cursor = 'url(../images/cursor-newwin.gif),pointer';
		}
	}
}
addLoadEvent(externalLinks);


function addClass(element, className) {
    if (!hasClass(element, className)) {
        if (element.className) element.className += " " + className;
        else element.className = className;
    }
};

function removeClass(element, className) {
    var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
    element.className = element.className.replace(regexp, "$2");
};

function hasClass(element, className) {
    var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
    return regexp.test(element.className);
}; //restores IE className and getAttribute('class') functionality