var gnReqVersion   = 8;  // Required flash version
var llDomLoaded    = false;  // DOM not loaded yet

/*** Standard Functions ***/
function getElementsByClassName(lcClassName) {
	var laElements = (document.body.all)? document.body.all : document.body.getElementsByTagName("*");
	var laReturnElements = new Array();
	var lcTest = new RegExp("(^|\\s)" + lcClassName.replace(/\-/g, "\\-") + "(\\s|$)");  // Build RegExp and escape '-'
	var loElement;
	for(var i = 0; i < laElements.length; i++) {
		loElement = laElements[i];
		if(lcTest.test(loElement.className)) {
			laReturnElements[laReturnElements.length] = loElement;  // Avoid 'push' method for IE 5.0
		};
	};
	return (laReturnElements);
};
/**************************/

/*** Replace 'new window' links ***/
function linkReplace() {
	if(window.RegExp) {
		var lcReplace = /(<a)([^>]*)(name=\"_blank)|(name=_blank)(:?)([\w-]*)([^>]*)/ig;
		document.body.innerHTML = document.body.innerHTML.replace(lcReplace, "$1$2name=\"$6\"$7 onclick=\"javascript:window.open(this.getAttribute('href'));return false;\"");
	};
};
/**********************************/

/*** Setup functions to run after DOM is loaded ***/
function addDOMLoadEvent(func) {
	// Run function if DOM is loaded
	if(llDomLoaded) {
		func();
		return;
	}
	var oldOnDOMLoadEvents = window.onDOMLoadEvents;
	if(typeof window.onDOMLoad != "function") {
		window.onDOMLoadEvents = func;
	} else {
		window.onDOMLoadEvents = function() {
			if(oldOnDOMLoadEvents) {
				oldOnDOMLoadEvents();
			};
			func();
		};
	};
};
function onDOMLoad() {
	// quit if this function has already been called
	if (llDomLoaded) return;
	// flag this function so we don't do the same thing twice    
	llDomLoaded = true;
	if(typeof window.onDOMLoad == "function") onDOMLoadEvents();
};

if(document.addEventListener) document.addEventListener('DOMContentLoaded', onDOMLoad, false);

// for Internet Explorer (using conditional comments)
/*@cc_on @*/
/*@if (@_win32)
	document.write("<script id=\"IE_onDOMLoad\" defer src=\"javascript:void(0)\;\"><\/script>");
	var script = document.getElementById("IE_onDOMLoad");
	script.onreadystatechange = function() {
		if (this.readyState == "complete") {
			onDOMLoad(); // call the onload handler
		};
	};
/*@end @*/

/* for Safari */
if (/KHTML|WebKit/i.test(navigator.userAgent)) { // sniff
	var _timer = setInterval(function() {
		if (/loaded|complete/.test(document.readyState)) {
			onDOMLoad(); // call the onload handler
		}}, 1);
	};
	
/* for other browsers */
window.onload = onDOMLoad;
/**************************************************/

// set Loaded functions
addDOMLoadEvent(linkReplace);