/*
** Sitewide Functions
** Last Edited: 5.1.2008
*/




/*
** Configurable Directives
*/
var scripts = new Array('swfobject', 'expander', 'utilities');



/*
** Script Auto-loader, takes array of filenames
*/
var pathToRoot;
function dynLoadScript(scriptArr) {
	// Find the relative path to our javascript includes
	handler = document.getElementsByTagName("head")[0].getElementsByTagName("script");
	for(var x=0; x<handler.length; x++) {
		if(handler[x].getAttribute("src")) {
			if(handler[x].getAttribute("src").match(/functions.js/)) {
				scriptPrefix = handler[x].getAttribute("src").replace(/functions.js/, "");
				pathToRoot = scriptPrefix.replace(/javascript/, "").replace(/\/\//, "/");
				if(pathToRoot == "/") {
					pathToRoot = "";
				}
			}
		}
	}	
	var a = new Array();
	for(var x=0; x<scriptArr.length; x++) {
		// safari fails on dynamic loading, brute force
		document.write('<script type="text/javascript" src="'+scriptPrefix+scriptArr[x]+'.js"></script>');
	}
	return false;
}
dynLoadScript(scripts);



/*
** Basic site-wide and site-specific functionality
*/
function initSite() {
	// Loading external file functions first
	validateForm.prep();
	initExpander();
	appendLinks();
}

// Mozilla and Opera
if (document.addEventListener) {
  document.addEventListener("DOMContentLoaded", initSite, false);
} else {
	if(window.onload) {
		oldOnloader = window.onload;
		window.onload = function() { oldOnloader(); window.onload; return false; };
	} else {
		window.onload = function() { initSite(); return false; };
	}
}

function appendLinks(){
	var links = document.getElementsByTagName("a");
	
	//Get the querystring from the current URL
	var v = escape(location.search);
	
  	//Loop through all links on the page and add the querystring
	for(x = 0; x < links.length; x++){
		var the_link = escape(links[x])
		links[x].setAttribute("href",unescape(the_link) + v)

	}
}

