
var gLoadQueue = Array();
var gLoaded    = false;

function queueLoad(aFunctionName) {
	if (arguments.length > 1) {
		var lArgumentsArray = new Array();
		for (var i=1; i < arguments.length; i++ ) {
			lArgumentsArray[lArgumentsArray.length] = arguments[i];
		}
		var lFunctionCallArray = new Array(aFunctionName,lArgumentsArray)
	} else {
		var lFunctionCallArray = Array(aFunctionName);
	}
	gLoadQueue[gLoadQueue.length] = (lFunctionCallArray);
}

function loadQueuedFunctions() {
	gLoaded = true;
	for(var i=0; i < gLoadQueue.length; i++) {
		var lFunctionName    = gLoadQueue[i][0];
		var lArgumentsString = "";
		if (gLoadQueue[i].length > 1) {
			for(var j=0; j < gLoadQueue[i][1].length; j++) {
				if (j > 1) lArgumentsString += ", ";
				lArgumentsString += gLoadQueue[i][1][j];
			}
		}
		eval(lFunctionName + "(" + lArgumentsString + ");" );
	}
}

onload = loadQueuedFunctions;
