VBBootstrap = function() {
	var scriptList = new Array('http://www.vitabase.com/widget/js/prototype.js',
							   'http://www.vitabase.com/widget/js/VBSearchBoxv01.js',
							   'http://www.vitabase.com/widget/js/VBUIPanel.js',
							   'http://www.vitabase.com/widget/js/JsonRequest.js',
							   'http://www.vitabase.com/widget/js/DynamicScript.js');
	var totalScripts = scriptList.length;
	var loadedScripts = 0;
	var scriptCmdList = new Array([],[],[],[],[]);
	var scriptObjectList = new Array(totalScripts);
	var scriptStateList = new Array(totalScripts);
	
	function GetScriptUrl(index){
		var strUrl = scriptList[index];
		var len = scriptCmdList[index].length;
		for (var i = 0;i < len; ++i) {eval("strUrl = " + scriptCmdList[index][i] + "(strUrl);");}
		return strUrl;
	 };
	
	for (var i = 0; i < totalScripts; i++){
		scriptStateList[i] = new Object();
		scriptStateList[i].fileName = GetScriptUrl(i);
		scriptStateList[i].loadState = 'unload';
	}
	for (var i = 0; i < totalScripts; i++){
		scriptObjectList[i] = document.createElement('script');
		scriptObjectList[i].type = "text/javascript";
		scriptObjectList[i].src = scriptStateList[i].fileName;
		scriptObjectList[i].charset = "utf-8";
        scriptObjectList[i].onreadystatechange = new Function("ScriptObjectReadyCallback(" + i + ")");
		scriptObjectList[i].onload = new Function("ScriptObjectLoadCallback(" + i + ")");
		scriptObjectList[i].onerror = new Function("ScriptObjectErrorCallback(" + i + ")");
		document.getElementsByTagName('head')[0].appendChild(scriptObjectList[i]);
	}
	
	ScriptObjectReadyCallback = function(index) {
		if (scriptObjectList[index].readyState == 'loaded' || scriptObjectList[index].readyState == 'complete'){
				scriptStateList[index].loadState = 'loaded';
				++loadedScripts;
				if (loadedScripts == totalScripts){VBSearchBoxScriptReady(scriptStateList);}
			}
	};
	ScriptObjectLoadCallback = function(index){
		scriptStateList[index].loadState = 'loaded';
		++loadedScripts;
		if (loadedScripts == totalScripts){VBSearchBoxScriptReady(scriptStateList);}
	};
	ScriptObjectErrorCallback = function(index){
		scriptStateList[index].loadState = 'error';
		++loadedScripts;
		if (loadedScripts == totalScripts){VBSearchBoxScriptReady(scriptStateList);}
	};
	try{window.detachEvent('onload', VBSearchLoadBootstrap);}
	catch (e){}
};

function VBSearchLoadBootstrap(){g_objVBBootstrap = new VBBootstrap();}

try{window.attachEvent('onload', VBSearchLoadBootstrap);}
catch (e){window.addEventListener('load', VBSearchLoadBootstrap, false);}
