var matchClassName = function (node, className){
	try {
		var re = new RegExp ("\\b" + className + "\\b", "gi");
		return ( node.className.match(re)); 
	} catch ( e ) { return }
}


var applyClassName = function (node, className, state ){
	try {
		var re = new RegExp ("\\b" + className + "\\b", "gi");
		if ( state ) {
			if ( !node.className.match(re) ) node.className += (" " + className); 
		}else{
			node.className = node.className.replace(re, "");
			node.className = node.className.replace(/\s+/gi, " ");
		}
	} catch ( e ) {}
}

var $addEventListener = function ( node, eventType, eventListener ) {
	try {
		if( node.attachEvent ) {
			node.attachEvent( "on" + eventType, eventListener );
		}
		else
		{
			node.addEventListener( eventType, eventListener, false);
		}
	} catch ( e ) {}
}

var getElementsByClassName = function ( container, className ) {

	var tmpArr = [];

	try {
		var nodeList = container.getElementsByTagName( "*" );

		for ( var i = nodeList.length; i-- >0; ) {
			if ( matchClassName( nodeList.item( i ), className ) ) tmpArr.push( nodeList.item( i ) );
		}

	} catch ( e ) {};

	return tmpArr;	
}

var externalLinks = function () {
	try {
 		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";
			 }
	} catch ( e ) {};
}

window.onload = externalLinks;
