addLoadEvent(initExternalLinks);
addLoadEvent(initSEOBoxes);

function initSEOBoxes() {
	var seoBoxes = getElementsByClassName("seoBox");
	var seoClose = document.getElementById("seoClose");

	seoClose.onclick = function() { killSEOBoxes(); }

	for(var i in seoBoxes) {
		seoBoxes[i].onclick = function() {
			if(this.tagName == "DIV") {
				killSEOBoxes();
			} else {
				showSEOBox(this.rel);
			}
			return true;
		}
	}
}

function showSEOBox(id) {
	var seoBox = document.getElementById(id);
	killSEOBoxes();
	seoBox.style.display = "block";
}

function killSEOBoxes() {
	var seoBoxes = getElementsByClassName("seoBox");
	for(var i in seoBoxes) { if(seoBoxes[i].tagName == "DIV") { seoBoxes[i].style.display = "none"; } }
}

function initExternalLinks() {
	var hyperlinks = getElementsByRelName("external");
	for(var i = 0; i < hyperlinks.length; i++) {
		hyperlinks[i].target = "_blank";
	}
}

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

function getElementsByClassName(classname) {
	var node = document.getElementsByTagName("body")[0];
	var a = [];
	var re = new RegExp('\\b' + classname + '\\b');
	var els = node.getElementsByTagName("*");
	for(var i = 0, j = els.length; i < j; i++) if(re.test(els[i].className)) a.push(els[i]);
	return a;
}

function getElementsByRelName(relname) {
	var node = document.getElementsByTagName("body")[0];
	var a = [];
	var re = new RegExp('\\b' + relname + '\\b');
	var els = node.getElementsByTagName("*");
	for(var i = 0, j = els.length; i < j; i++) if(re.test(els[i].rel)) a.push(els[i]);
	return a;
}
