var gInitArray = new Array();

function AddToInitArray(fn) {
	gInitArray[gInitArray.length] = fn;
}

function InitFromArray() {
	for (var i = 0; i < gInitArray.length; i++) {
		gInitArray[i]();
	}
}

onload=InitFromArray;

// Chaining functions to element...
function addHandler(elem, strEvent, fnName) {
    var ref = 'a'+new Date().valueOf();
    while (typeof elem[ref] != 'undefined') {
        ref = 'a'+Number(ref.substr(1,100))+1;
    }
    elem[ref] = elem[strEvent];
    elem[strEvent] = new Function("this['"+ref+"']();"+fnName);
}

// add IE innerText to Gecko's...
if (typeof HTMLElement != "undefined" &&
	typeof HTMLElement.prototype.__defineGetter__ != "undefined") {

	HTMLElement.prototype.__defineGetter__('innerText', function() {
			var tmp = this.innerHTML.replace(/<[^>]*>/g, "");
			return tmp;//.replace(//g, "");
  		}
	);

	HTMLElement.prototype.__defineSetter__('innerText',	function(txtStr) {
			var parsedText = document.createTextNode(txtStr);
			this.innerHTML = "";
			this.appendChild( parsedText );
		}
	);
}

