window.onload = function() {
	function Banner(name) {
		var pause = false;
		var banner = document.getElementById(name);
		if (banner == null) {
			return;
		}
		banner.onmouseover = function() {
			pause = true;
		}
		banner.onmouseout = function() {
			pause = false;
		}
		switchPage = function(currentIndex, nextIndex) {
			frames[currentIndex].className = 'banner_frame_off';
			frames[nextIndex].className = 'banner_frame_on';
			button[currentIndex].className = 'nav_off';
			button[nextIndex].className = 'nav_on';
		}
		var navigation_area = document.getElementById('navigation_area');
		var timer = 0;
		var frames = new Array();
		var button = new Array();
		var currentIndex = 0;
		if (!banner.getElementsByTagName) return;
		divs = banner.getElementsByTagName("div");
		if (divs.length > 0) {
			var ul = document.createElement("ul");
			var frameCount = 0;
			for (var i = 0; i < divs.length; i++) {
				if (divs[i].className === 'banner_frame_off') {
					var atags = divs[i].getElementsByTagName("a");
					if (atags && (atags.length > 0)) {
						var li = document.createElement("li");
						var a = document.createElement("a");
						a.title = atags[0].title;
						a.href = atags[0].href;
						a.target = atags[0].target;
						li.appendChild(a);
						a.frameIndex = frameCount++;
						a.removeAttribute
						a.innerHTML = frameCount;
						a.onmouseover = function() {
							pause = true;
							var oldIndex = currentIndex;
							currentIndex = this.frameIndex;
							switchPage(oldIndex, currentIndex);
						}

						a.onmouseout = function() {
							pause = false;
						}
						ul.appendChild(li);
						frames.push(divs[i]);
						button.push(a);
					}
				}
			}
			switchPage(0, 0);
			navigation_area.appendChild(ul);

			timer = setInterval(
				function() {
					if (pause) return;
					var nextIndex = (currentIndex + 1) % frames.length;
					switchPage(currentIndex, nextIndex);
					currentIndex = nextIndex;
				},
				7000);
		}
	}
	function Tables(name) {
		var container = document.getElementById(name);
		if (container == null) {
			return;
		}
		if (!container.getElementsByTagName) return;
		var tables = container.getElementsByTagName("table");
		for (var i = 0; i < tables.length; i++) {
			var table = tables[i];
			var parent = table.parentNode;

			if (parent && (parent.className === 'content_copy')) {
				if ('' + table.className + '' === '') {
					for (j = 0; j < table.tBodies.length; j++) {
						var even = false;
						for (k = 0; k < table.tBodies[j].rows.length; k++) {
							if (even) {
								table.tBodies[j].rows[k].className = 'even';
							}
							even = !even;
						}
					}
				}
			}
		}
	}

	function getBrowser() {
		var sUserAgent = navigator.userAgent;
		var sBrowser = "";
		var sVersion = "";
		if (sUserAgent.indexOf("Opera") > -1) {
			var re = new RegExp("(Opera \\d+\\.\\d+)");
			re.test(sUserAgent);
			sBrowser = RegExp["$1"];
		} else if (sUserAgent.indexOf("Chrome") > -1) {
			var re = new RegExp("Chrome\\/(\\d+(?:\\.\\d*)?)");
			re.test(sUserAgent);
			var v = parseFloat(RegExp["$1"]);
			sBrowser = "Google Chrome " + RegExp["$1"];
		} else if (sUserAgent.indexOf("AppleWebKit") > -1) {
			var re = new RegExp("AppleWebKit\\/(\\d+(?:\\.\\d*)?)");
			re.test(sUserAgent);
			var v = parseFloat(RegExp["$1"]);
			sBrowser = "Safari";
			if (v >= 85) {
				sBrowser = "Safari 1";
			}
			if (v >= 124) {
				sBrowser = "Safari 2";
			}
		} else if (sUserAgent.indexOf("Konqueror") > -1) {
			var re = new RegExp("(Konqueror)\\/(\\d+(?:\\.\\d+(?:\\.\\d+)?)?)");
			re.test(sUserAgent);
			sBrowser = RegExp["$1"] + " " + RegExp["$2"];
		} else if (sUserAgent.indexOf("KHTML") > -1) {
			sBrowser = "KHTML Compatible";
		} else if (sUserAgent.indexOf("compatible") > -1 && sUserAgent.indexOf("MSIE") > -1) {
			var re = new RegExp("MSIE (\\d+\\.\\d+)");
			re.test(sUserAgent);
			sBrowser = "Microsoft Internet Explorer " + RegExp["$1"];
		} else if (sUserAgent.indexOf("Firefox") > -1) {
			var re = new RegExp("(Firefox)\\/(\\d+\\.\\d+(?:\\.\\d+)?)");
			re.test(sUserAgent);
			sBrowser = RegExp["$1"] + " " + RegExp["$2"];

		} else if (sUserAgent.indexOf("Gecko") > -1) {
			var re = new RegExp("rv:(\\d+\\.\\d+(?:\\.\\d+)?)");
			re.test(sUserAgent);
			sBrowser = "Mozilla " + RegExp["$1"];

		}
		return sBrowser;

	}
	function showDimensions(id) {
		var elem = document.getElementById(id);
		if (elem == null) return;
		var bd = new BrowserDimensions();
		var w = bd.getViewableAreaWidth();
		var h = bd.getViewableAreaHeight();
		var sw = bd.getScreenWidth();
		var sh = bd.getScreenHeight();

		var s = "You are accessing this site using " + getBrowser() + " as your browser, your screen resolution is " + sw + " x " + sh + " pixels and your viewing pane was " + w + " x " + h + " pixels when this page loaded.";
		elem.innerHTML = s;
	}

	function setupQAList(id) {

		var c = document.getElementById(id);
		if (c == null) return false;
		if (c.tagName !== "DL") return false;
		var dt = c.getElementsByTagName("DT");
		for (var i = 0; i < dt.length; i++) {
			var e = dt[i];
			var ns = e.nextSibling;
			while (ns.nodeType !== 1) {
				ns = ns.nextSibling;
			}
			if (ns.tagName == "DD") {
				var s = e.innerHTML;
				var txt = document.createTextNode(s);
				e.innerHTML = '';
				var a = document.createElement("a");
				a.appendChild(txt);
				a.href = "#";
				a.dep = ns;
				ns.style.display = 'none';
				a.onclick = function() {
					var d = this.dep;
					if (d.style.display != 'none') {
						d.style.display = 'none';
					} else {
						d.style.display = 'block';
					}
					return false;
				}
				e.appendChild(a);
			}
		}
	}

	function setupExpandMonkey(name) {
		if (!document.getElementById) return;
		var container = document.getElementById(name);
		if (container == null) return;
		if (!container.getElementsByTagName) return;
		var divs = container.getElementsByTagName("div");
		var archiveList = new Array();
		if (divs.length > 0) {
			var isOdd = true;
			for (var i = 0; i < divs.length; i++) {
				var div = divs[i];

				if ('' + div.className + '' === '') {
					if (isOdd) {
						div.className = 'odd';
					}
				}

				var ulists = div.getElementsByTagName("ul");
				for (var j = 0; j < ulists.length; j++) {
					var ul = ulists[j];
					if (((' ' + ul.className + ' ').indexOf("files") != -1)) {
						var files = ul.getElementsByTagName("li");
						for (var fi = 0; fi < files.length; fi++) {
							var atags = files[fi].getElementsByTagName("a");
							for (var ai = 0; ai < atags.length; ai++) {
								var myregexp = /^[\s\S]*\.(\w+)$/;
								var match = myregexp.exec(atags[ai].href);
								if (match != null) {
									files[fi].className = match[1];
								} else {
									files[fi].className = "";
								}
							}

						}

						if (files.length > 1) {
							var linkDiv = document.createElement("div");
							var fileDiv = document.createElement("div");
							linkDiv.className = "link";
							fileDiv.className = "archive";


							var a = document.createElement("a");
							a.href = "#";
							a.innerHTML = 'Show archive';
							a.dep = fileDiv;

							fileDiv.style.display = 'none';
							archiveList.push(a);
							a.onclick = function() {


								var d = this.dep;
								if (d.style.display != 'none') {
									d.style.display = 'none';
									this.innerHTML = 'Show archive';
								} else {
									d.style.display = 'block';
									this.innerHTML = 'Hide archive';
									for (var ai = 0; ai < archiveList.length; ai++) {
										if (archiveList[ai] != this) {
											archiveList[ai].dep.style.display = 'none';
											archiveList[ai].innerHTML = 'Show archive';
										}
									}
								}
								return false;
							}
							linkDiv.appendChild(a);

							var ul2 = document.createElement("ul");
							while (files.length > 1) {
								var f = files[1];
								ul2.appendChild(f);

							}
							fileDiv.appendChild(ul2);
							div.appendChild(linkDiv);
							div.appendChild(fileDiv);

						}

					}
				}

				isOdd = !isOdd;
			}
		}

	}

	function setupRepager(className) {
		function applyRepager(repager) {
			if (!repager) return;
			repager.className = 'repaged';
			for (var i = 0; i < repager.childNodes.length; i++) {
				var cn = repager.childNodes[i];

				if (cn.tagName.toLowerCase() == "ul") {

					var pageLength = Math.ceil(cn.childNodes.length / 2);
					var div2 = document.createElement("div");
					div2.className = 'repaged';
					var ul2 = document.createElement("ul");
					div2.appendChild(ul2);

					repager.parentNode.insertBefore(div2, repager);

					for (var j = 0; j < pageLength; j++) {
						ul2.appendChild(cn.childNodes[0]);
					}

				}
			}
		}
		if (!className) return;
		if (!document.getElementsByTagName) return;
		var divs = document.getElementsByTagName("div");
		for (var i = 0; i < divs.length; i++) {
			if ((' ' + divs[i].className + ' ').indexOf(className) > 0) {
				applyRepager(divs[i]);
			}
		}
	}

	setupQAList("qaList");

	Banner('banner_content1');
	Tables('mainContent');
	showDimensions('browserDimensions');
	// LoadIndices('fin_indicators');
	setupExpandMonkey("expand_monkey");
	setupRepager("repager");
}

var errMsg = {
	required: {
		msg: "required",
		test: function(obj, load) {
			return true;
		}
	},
	email: {
		msg: "required",
		test: function(obj, load) {
			return true;
		}
	},
	numeric: {
		msg: "required",
		test: function(obj, load) {
			return true;
		}
	},
	name: {
		msg: "required",
		test: function(obj, load) {
			return true;
		}
	}
}

function validateField(form, load) {
	var errors = [];
	for (var name in errMsg) {
	}
}
function validateForm(form, load) {
	var valid = true;
	for (var i = 0; i < form.elements.length; i++) {

	}
	return valid;
}
function setupValidation(id) {
	var form = document.getElementById(id);
	if (form == null) return false;
	if (form.tagName !== "FORM") return false;
	for (var i = 0; i < form.elements.length; i++) {
		var field = form.elements[i];
		if (field.type == "text") {
			var span = document.createElement("span");
			span.appendChild(document.createTextNode("required"));
			field.parentNode.appendChild(span);
		}

	}
}

function setupQuickLinks(id) {

	if (document.getElementById) {
		var e = document.getElementById(id);
		e.onchange = function() {
			var url = this.options[this.selectedIndex].value;
			if (url.indexOf("http") == 0) {
				window.open(url, "_blank");
			} else {
				window.location = url;
			}
		}
	}
}