function Browser() {

	var ua, s, i;

	this.isIE = false;
	this.isNS = false;
	this.version = null;
	this.isLinux = navigator.userAgent.indexOf("Linux")!=-1;

	ua = navigator.userAgent;

	s = "MSIE";
	if ((i = ua.indexOf(s)) >= 0) {
		this.isIE = true;
		this.version = parseFloat(ua.substr(i + s.length));
		return;
	}

	s = "Netscape6/";
	if ((i = ua.indexOf(s)) >= 0) {
		this.isNS = true;
		this.version = parseFloat(ua.substr(i + s.length));
		return;
	}

	s = "Gecko";
	if ((i = ua.indexOf(s)) >= 0) {
		this.isNS = true;
		this.version = 6.1;
		return;
	}

}

var browser = new Browser();

function preloadImages()
{ 
  var args = preloadImages.arguments;
  document.imageArray = new Array(args.length);
  for(var i=0; i<args.length; i++) {
    document.imageArray[i] = new Image;
    document.imageArray[i].src = args[i];
  }
}

function decreaseFont() {
	var content = document.getElementById("content");
	var size = 100;
	if(content.style.fontSize)
		size = parseInt(content.style.fontSize);
	if(size <= 80) return; 
	content.style.fontSize = (size - 10) + "%";
}
function increaseFont() {
	var content = document.getElementById("content")
	var size = 100;
	if(content.style.fontSize)
		size = parseInt(content.style.fontSize);
	if(size >= 120) return; 
	content.style.fontSize = (size + 10) + "%";
}
function getCookie(name) {
	var allcookies = document.cookie;
	var pos = allcookies.indexOf(name + "=");
	if(pos != -1) {
		var start = pos + name.length + 1;
		var end = allcookies.indexOf(";", start);
		if(end == -1) end = allcookies.length;
		var value = allcookies.substring(start, end);
		value = unescape(value);
		return value;
	} else return false;
}
var clippingCount;
function addClipping() {
	var clippings = getCookie("clippings2");
	if(!clippings) clippings = "";
	else clippings = unescape(clippings);
	var title = document.getElementsByTagName("H1")[0].innerHTML.replace(/<[^<>]*>/g,"");
	var url = location.href.replace(/.+\/\/[^\/]+/,"");
	clippingCount++;
	document.getElementById("clipAddCtrl").style.visibility = "hidden";
	document.getElementById("clippingCount").innerHTML = clippingCount;
	document.getElementById("clippings").innerHTML += '<a href="' + url + '" onClick="markRead(this)">' + title + '</a>';
	document.cookie = "clippings2=" + escape(clippings + title + ">" + url + ">0>") + "; expires=" + new Date("12/31/2999").toGMTString();
}
function markRead(obj) {
	var clippings = unescape(getCookie("clippings2"));
	var url = obj.href.replace(/.+\/\/[^\/]+/,"");
	var clippings = clippings.replace(">" + url + ">0>", ">" + url + ">1>");
	document.cookie = "clippings2=" + escape(clippings) + "; expires=" + new Date("12/31/2999").toGMTString();
}
function removeClippings() {
	document.getElementById("clippingCount").innerHTML = 0;
	document.getElementById("clippings").innerHTML = "";
	document.getElementById("clipAddCtrl").style.visibility = "visible";
	document.cookie = "clippings2=; expires=Fri, 02-Jan-1970 00:00:00 GMT";
	clippingCount = 0;
	out(document.getElementById("clipAddCtrl"));
}
function removeRead() {
	var clippings = getCookie("clippings2");
	if(clippings) {
		clippings = unescape(clippings).replace(/[^>]+>[^>]+>1>/g,"");
		var content = "";
		if(clippings != "") {
			var items = clippings.split(">");
			clippingCount = (items.length -1) / 3;
			for(var i=0; i < items.length - 1; i+=3) {
				if(items[i+2] == 1) 
					content += '<a href="' + items[i+1] + '" onClick="markRead(this)" class="clipRead">' + items[i] + '</a>';
				else
					content += '<a href="' + items[i+1] + '" onClick="markRead(this)">' + items[i] + '</a>';
			}
			document.cookie = "clippings2=" + escape(clippings) + "; expires=" + new Date("12/31/2999").toGMTString();
		} else {
			clippingCount = 0;
			document.cookie = "clippings2=; expires=Fri, 02-Jan-1970 00:00:00 GMT";
		}
		document.getElementById("clippings").innerHTML = content;
		if(pageClipped && pageRead) {
			document.getElementById("clipAddCtrl").style.visibility = "visible";
			pageClipped = false;
			pageRead = false;
		}
		document.getElementById("clippingCount").innerHTML = clippingCount;
	}
	out(document.getElementById("clipAddCtrl"));
}
var pageClipped = false;
var pageRead = false;
function clippingInit() {
	if(!document.getElementById("clippingCtrl")) return;
	var clippings = getCookie("clippings2");
	var content = "";
	if(clippings) {
		clippings = unescape(clippings);
		var items = clippings.split(">");
		clippingCount = (items.length -1) / 3;
		for(var i=0; i < items.length - 1; i+=3) {
			var status = items[i+2];
			var url = items[i+1];
			if(status == 1)
				content += '<a href="' + url + '" onClick="markRead(this)" class="clipRead">' + items[i] + '</a>';
			else
				content += '<a href="' + url + '" onClick="markRead(this)">' + items[i] + '</a>';
			if(url == location.href.replace(/.+\/\/[^\/]+/,"")) {
				pageClipped = true;
				if(status == 1)
					pageRead = true;
			}
		}
	} else clippingCount = 0;

	if(!pageClipped) {
		document.getElementById("clipAddCtrl").style.visibility = "visible";
	}
	document.getElementById("clippingCount").innerHTML = clippingCount;

	var menu = document.createElement("DIV");
	menu.id = "menu200";
	menu.innerHTML = '<div onMouseOver="ovr(this,0)" onMouseOut="out(this)">' + 
'<div id="clippings">' + content + '</div>' + 
'<div id="remove">' + 
'- <a href="javascript:removeClippings()">remove all clippings</a><br>' + 
'- <a href="javascript:removeRead()">remove all read clippings</a>' + 
'</div></div>';
	document.body.appendChild(menu);

	var menuContainer = document.getElementById("menu200");
	menuContainer.level = 1;
	var menuItems = menuContainer.getElementsByTagName("DIV");
	menuItems[0].parent = menuContainer;
	menuItems[0].menuGroup = menuContainer;

	var clippingCtrl = document.getElementById("clippingCtrl");
	clippingCtrl.parent = clippingCtrl.offsetParent;
	clippingCtrl.parent.level = 0;
	clippingCtrl.onmouseover = ovr3;
	clippingCtrl.onmouseout = out2;
}
function checkEmailAddress(field) {
	if(!field.value.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\.biz)|(\..{2,2}))$)\b/gi)) {
		alert("Please enter a valid email address.")
		field.focus()
		field.select()
		return false
   } else return true
}
function print() {
	popup=window.open("print.cfm","PrinterFriendly","toolbar=1,scrollbars=1,resizable=1,width=600,height=420")
}
var directDownload = false;
function download(id,newWindow) {
	if(newWindow && newWindow == 1)
		popup = window.open("download.cfm?id=" + id,"Download","width=500,height=420,toolbar=0,scrollbar=0,resizeable=1");
	else if(directDownload || getCookie("dload") != false)
		location.href = "download.cfm?id=" + id;
	else 
		popup = window.open("download.cfm?id=" + id,"Download","width=500,height=420,toolbar=0,scrollbar=0,resizeable=1");
}
function openWindow(id) {
	popup=window.open("popup.cfm?id=" + id,"Popup","toolbar=1,scrollbars=1,resizable=1,width=600,height=420")
}
function clearSearch(obj) {
	if(!obj.clicked && obj.value == obj.defaultValue) {
		obj.value = "";
		obj.clicked = true;
	}
}
function validateSearch(form) {
	if(form.q.value == form.q.defaultValue || form.q.value == "") {
		alert("Please type the word(s) you wish to search for.");
		form.q.focus();
		return false;
	}
	return true;
}
function apply(id) {
	popup=window.open("apply.cfm?id=" + id,"Popup","toolbar=1,scrollbars=1,resizable=1,width=600,height=420")
}
function popWindow(url,width,height) {
	popup=window.open(url,"_blank","toolbar=0,scrollbars=0,resizable=0,width=" + width + ",height=" + height)
}
function popWindow2(url,width,height) {
	popup=window.open(url,"_blank","toolbar=0,scrollbars=1,resizable=1,width=" + width + ",height=" + height)
}
var activeHighlight;
function showHighlight(id) {
	if(activeHighlight) activeHighlight.style.display = "none";
	var newHighlight = document.getElementById(id);
	newHighlight.style.display = "block";
	activeHighlight = newHighlight;
}
