// JavaScript Document
function mailpage()
{
mail_str = "mailto:?subject=" + document.title;

mail_str += "&body=I thought you might be interested in this: " + document.title;

mail_str += ". You can view it at, " + location.href; 
location.href = mail_str;
}

function PageQuery(q) {
				if(q.length > 1) this.q = q.substring(1, q.length);
				else this.q = null;
				this.keyValuePairs = new Array();
				if(q) {
					for(var i=0; i < this.q.split("&").length; i++) {
						this.keyValuePairs[i] = this.q.split("&")[i];
					}
				}
				this.getKeyValuePairs = function() { return this.keyValuePairs; }
				this.getValue = function(s) {
				for(var j=0; j < this.keyValuePairs.length; j++) {
					if(this.keyValuePairs[j].split("=")[0] == s)
						return this.keyValuePairs[j].split("=")[1];
					}
					return false;
				}
				this.getParameters = function() {
					var a = new Array(this.getLength());
					for(var j=0; j < this.keyValuePairs.length; j++) {
						a[j] = this.keyValuePairs[j].split("=")[0];
					}
					return a;
				}
				this.getLength = function() { return this.keyValuePairs.length; } 
				}
				function queryString(key){
					var page = new PageQuery(window.location.search); 
					return unescape(page.getValue(key)); 
				}
				function displayItem(key){
					if(queryString(key)=='false') 
					{
					//document.write("you didn't enter a ?name=value querystring item.");
					}else{
					//document.write(queryString(key));
					}
				}
if(queryString("page")=="print"){
	document.write("<link rel='stylesheet' type='text/css' href='http://www.albany.edu/templates/css/000_reddot_print.css' />");
	
}
else{
	document.write("<link rel='stylesheet' type='text/css' href='http://www.albany.edu/templates/000_reddot_full_0711.css' />");
}

// The constructor should be called with
// the parent object (optional, defaults to window).

function Timer(){
    this.obj = (arguments.length)?arguments[0]:window;
    return this;
}

// The set functions should be called with:
// - The name of the object method (as a string) (required)
// - The millisecond delay (required)
// - Any number of extra arguments, which will all be
//   passed to the method when it is evaluated.

Timer.prototype.setInterval = function(func, msec){
    var i = Timer.getNew();
    var t = Timer.buildCall(this.obj, i, arguments);
    Timer.set[i].timer = window.setInterval(t,msec);
    return i;
}
Timer.prototype.setTimeout = function(func, msec){
    var i = Timer.getNew();
    Timer.buildCall(this.obj, i, arguments);
    Timer.set[i].timer = window.setTimeout("Timer.callOnce("+i+");",msec);
    return i;
}

// The clear functions should be called with
// the return value from the equivalent set function.

Timer.prototype.clearInterval = function(i){
    if(!Timer.set[i]) return;
    window.clearInterval(Timer.set[i].timer);
    Timer.set[i] = null;
}
Timer.prototype.clearTimeout = function(i){
    if(!Timer.set[i]) return;
    window.clearTimeout(Timer.set[i].timer);
    Timer.set[i] = null;
}

// Private data

Timer.set = new Array();
Timer.buildCall = function(obj, i, args){
    var t = "";
    Timer.set[i] = new Array();
    if(obj != window){
        Timer.set[i].obj = obj;
        t = "Timer.set["+i+"].obj.";
    }
    t += args[0]+"(";
    if(args.length > 2){
        Timer.set[i][0] = args[2];
        t += "Timer.set["+i+"][0]";
        for(var j=1; (j+2)<args.length; j++){
            Timer.set[i][j] = args[j+2];
            t += ", Timer.set["+i+"]["+j+"]";
    }}
    t += ");";
    Timer.set[i].call = t;
    return t;
}
Timer.callOnce = function(i){
    if(!Timer.set[i]) return;
    eval(Timer.set[i].call);
    Timer.set[i] = null;
}
Timer.getNew = function(){
    var i = 0;
    while(Timer.set[i]) i++;
    return i;
}

sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);