var d = document;

/************
	Would someone please tell me what the heck is going on?
 
	 */
	


/*
	Please replace my comments here and above with concise documentation as appropriate.
	
	Clifford
	
************/

var commonAjaxJsNode = addScriptToDOM('/jslib/commonAjax.js');
var domFunctionsJsNode = addScriptToDOM('/jslib/domFunctions.js');
var domDragJsNode = addScriptToDOM('/jslib/dom-drag.js');
var windowCreatorJsNode = addScriptToDOM('/jslib/windowCreator.js');
var whichClickJsNode = addScriptToDOM('/jslib/whichClick.js');
var miscFunctionsJsNode = addScriptToDOM('/jslib/miscFunctions.js');
var autoCompleteJsNode = addScriptToDOM('/jslib/autocomplete.js');
var memLoaderJsNode = addScriptToDOM('/jslib/memLoader.js');

function concealJS() {
	destroyNode(commonAjaxJsNode);
	destroyNode(domFunctionsJsNode);
	destroyNode(domDragJsNode);
	destroyNode(windowCreatorJsNode);
	destroyNode(whichClickJsNode);
	destroyNode(miscFunctionsJsNode);
}

function addScriptToDOM(script_filename) {
	//initialize array if does not exist
	aScripts = document.getElementsByTagName('script')
	//if script already exists in head, do not add it and return node reference point
	for (script in aScripts) if (aScripts.id == script_filename) return aScripts[script].sc_src;
	
	//If script does not already exist, add to DOM and return reference point to node.
	var html_doc = document.getElementsByTagName('head').item(0);
	var js = document.createElement('script');
	js.setAttribute('language', 'javascript');
	js.setAttribute('type', 'text/javascript');
	js.setAttribute('src', script_filename);
	js.setAttribute('id', script_filename);
	html_doc.appendChild(js);
	return js;
}
function removeScriptFromDOM(script_filename) {
	for (key in aScripts) {
		if (aScripts[key].id == script_filename) {
			tempScript = aScripts[key];
		}
	}
	if(tempScript) destroyNode(tempScript);
}
function runScriptOnce(script_filename) {
	var html_doc = document.getElementsByTagName('head').item(0);
	var js = document.createElement('script');
	js.setAttribute('language', 'javascript');
	js.setAttribute('type', 'text/javascript');
	js.setAttribute('src', script_filename);
	js.setAttribute('id', script_filename);
	html_doc.appendChild(js);
	t=setTimeout(function(){destroyNode(js)},500);
}

function addStyleToDOM(css_filename) {
	//if stylesheet already exists in head, do not add it and return node reference point
	allNodes = document.getElementsByTagName('*');
	aStyleSheets = new Array();
	for (key in allNodes) {
		if(allNodes[key].tagName == 'LINK') 
			if (allNodes[key].id == css_filename) 
				return allNodes[key];
	}
	
	var html_doc = document.getElementsByTagName('head').item(0);
    var cssObject = document.createElement('link');
    cssObject.setAttribute('type', 'text/css');
    cssObject.setAttribute('rel','stylesheet');
    cssObject.setAttribute('href', css_filename);
	cssObject.setAttribute('id', css_filename);
    html_doc.appendChild(cssObject);
    return cssObject;
}

stopExec = function(){return false;}