
function setLinkTargets(target, elements) {
	var i, j, anchors;

	for (i=0; i<elements.length; i++) {

		anchors = elements[i].getElementsByTagName("a");

		for (j=0; j<anchors.length; j++) {
			if (getDomainName(anchors[j].href) != getDomainName(document.location.href))
				anchors[j].target = target;
		}
	}
}


function getDomainName(url) {
	var schemeSuffix = "://";
	return url.substr(0, url.indexOf("/", url.indexOf(schemeSuffix) + schemeSuffix.length));
}

/*
Function Source:
http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname/
*/

function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|\\\\s)" + className + "(\\\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}
