// JavaScript Document
function OpenWindow(url,winname,w,h,needChild) {
//---------------------------------------------------------
// Standard function for opening an sfx menu window
//---------------------------------------------------------
    if (typeof winname == 'undefined' || ! winname.length) winname = 'openwin';
    if (typeof url     == 'undefined' || ! url.length) url = '';
    var child;
    if (!w && !h){
        child = window.open(url,winname,'width=700,height=500,scrollbars=yes,resizable=yes');
    }else{
        child = window.open(url,winname,"width="+w+",height="+h);
    }
    child.focus();
    if (needChild) return child;
}

function IsUniIP(ipAddy)
{
    var ipArray = new Array();
    ipArray = ipAddy.split(".");
    for (var i in ipArray)
    {
        ipArray[i] = Number(ipArray[i]);
    }
    if (ipArray[0] == 134 && ipArray[1] == 197)
    {
        if (ipArray[2] >=1 && ipArray[2] <= 9)
            return true;
        else if (ipArray[2] >=12 && ipArray[2] <= 17)
            return true;
        else if (ipArray[2] >= 19 && ipArray[2] <= 20)
            return true;
        else if (ipArray[2] >= 22 && ipArray[2] <= 24)
            return true;
        else if (ipArray[2] >= 28 && ipArray[2] <= 99)
            return true;
        else if (ipArray[2] >= 101 && ipArray[2] <= 112)
            return true;
        else if (ipArray[2] >= 114 && ipArray[2] <= 115)
            return true;
        else if (ipArray[2] >= 121 && ipArray[2] <= 125)
            return true;
        else if (ipArray[2] >= 184 && ipArray[2] <= 191)
            return true;
    }
    else
        return false;
    
    //Campus IP Range:
    //134.197.1-9.* 
    //134.197.12-17.*
    //134.197.19-20.*
    //134.197.22-24.*
    //134.197.28-99.*
    //134.197.101-112.*
    //134.197.114-115.*
    //134.197.121-125.*
    //134.197.184-191.*
}

function setCookie(c_name, value, expiredays)
{
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + expiredays);
    document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
}

function getCookie(c_name)
{
    if (document.cookie.length > 0)
    {
        c_start = document.cookie.indexOf(c_name + "=");
        if (c_start != -1)
        {
            c_start = c_start + c_name.length + 1;
            c_end = document.cookie.indexOf(";", c_start);
            if (c_end == -1) c_end = document.cookie.length;
            return unescape(document.cookie.substring(c_start, c_end));
        }
    }
    return "";
}

function getCookieSubkey(c_name, c_subname)
{
    var subkeys = new Array();
    subkeys = getCookie(c_name).split("&");
    for (var i in subkeys)
    {
        var subkeySplit = subkeys[i].split("=");
        if (subkeySplit[0] == c_subname)
        {
            return subkeySplit[1];
        }
    }
    return "";
    
}

function make_email(object, firstPart, secondPart)
{
	object.href = "mailto:" + firstPart + "@" + secondPart;
}

//TRIMS THE WHITESPACE FROM THE FRONT AND BACK OF A STRING
function trim(myString)
{
	while (myString.charAt(0) == " ")
	{
		myString = myString.slice(1);
	}
	while (myString.charAt(myString.length-1) == " ")
	{
		myString = myString.slice(0,(myString.length-1));
	}
	return myString;
}

var scrollObjID = "";
var scrollDirection = "left";
var scrollPixels = 5;
var scrollInterval = 80;
var scrollWinSize = 0;
var scrollContinuous = false;
var scrollByFrame = true;
var scrollTimeout;
var pixelsMoved = 0;


//WHEN CONTINUOUS, THE winSize = MAXIMUM winSize IT SHOULD TRAVEL
function startMyScroll(objID,direction,pixels,interval,winSize,continuous,byFrame)
{

	if (scrollTimeout == undefined)
	{
		var myObj = document.getElementById(objID);
		var myObjWidth = parseInt(myObj.style.width);
		var currTop = parseInt(myObj.style.top);
		var currLeft = parseInt(myObj.style.left);

		scrollObjID = objID;
		scrollDirection = direction;
		scrollPixels = pixels;
		scrollInterval = interval;
		scrollWinSize = winSize;
		scrollContinuous = continuous;
		scrollByFrame = byFrame;
		pixelsMoved = 0;
		
		myScroll();
	}
		
}

function myScroll()
{
	var myObj = document.getElementById(scrollObjID);
	var myObjWidth = parseInt(myObj.style.width);
	var myObjHeight = parseInt(myObj.style.height);
	var currTop = parseInt(myObj.style.top);
	var currLeft = parseInt(myObj.style.left);

	if (scrollDirection == "left")
	{
		if (scrollByFrame && (pixelsMoved + scrollPixels >= scrollWinSize))
		{
			scrollPixels = scrollWinSize - pixelsMoved;
		}
		if ((myObjWidth + currLeft - scrollPixels) < scrollWinSize)
		{
			if (scrollContinuous)
			{
				if (myObjWidth < 10000)
				{
					myObj.style.width = (myObjWidth * 2) + "px";
					myObj.innerHTML = myObj.innerHTML + myObj.innerHTML;
				}
				else
				{
					currLeft = scrollPixels;
					pixelsMoved = scrollWinSize;
				}
			}
		}
		myObj.style.left = currLeft - scrollPixels + "px";
	}
	
	else if (scrollDirection == "right")
	{
		if ((myObjWidth + currLeft + scrollPixels) >= myObjWidth)
		{
			if (scrollContinuous)
			{
				myObj.style.width = (myObjWidth * 2) + "px";
				myObj.innerHTML = myObj.innerHTML + myObj.innerHTML;
				myObj.style.left = currLeft - myObjWidth + "px";
				currLeft = parseInt(myObj.style.left);
			}
		}
		if (scrollByFrame && (pixelsMoved + scrollPixels >= scrollWinSize))
		{
			scrollPixels = scrollWinSize - pixelsMoved;
		}
		
		myObj.style.left = currLeft + scrollPixels + "px";
	}
	
	else if (scrollDirection == "up")
	{
		if (scrollByFrame && ((pixelsMoved + scrollPixels) >= scrollWinSize))
		{
			scrollPixels = scrollWinSize - pixelsMoved;	
		}
		else if (!scrollContinuous && Math.abs(currTop) >= (myObjHeight - scrollWinSize))
		{
			scrollPixels = 0;
			pixelsMoved = scrollWinSize;
		}
		
		myObj.style.top = currTop - scrollPixels + "px";
	}
	
	else if (scrollDirection == "down")
	{
		if (scrollByFrame && ((pixelsMoved + scrollPixels) >= scrollWinSize))
		{
			scrollPixels = scrollWinSize - pixelsMoved;	
		}
		else if (!scrollContinuous && currTop == 0)
		{
			scrollPixels = 0;
			pixelsMoved = scrollWinSize;
		}
		
		myObj.style.top = currTop + scrollPixels + "px";
	}
	
	pixelsMoved += scrollPixels;
	if (pixelsMoved < scrollWinSize || !scrollByFrame)
	{
		scrollTimeout = setTimeout('myScroll()', scrollInterval);
	}
	else
	{
		stopMyScroll();
	}
	
}

function stopMyScroll()
{
	clearTimeout(scrollTimeout);
	scrollTimeout = undefined;
	pixelsMoved = 0;
	scrollContinuous = false;
}

function IsEnter(e)
{ 
    //e is event object passed from function invocation
    var characterCode; //literal character code will be stored in this variable

    if (window.event)
        characterCode = window.event.keyCode;     //IE

    else
        characterCode = e.which;     //firefox

    if (characterCode == 13)
    {
        return true;
    }
    else
    {
        return false;
    }

}