/* JavaScript based on Harry Maugans' tutorial for sliding, collapsible menus. Adjusted by Bobby Sample to toggle the background image of the clicked button, to toggle closed any open menus that are in the same stack, and to allow automatic value for height of collapsible content rather than specifying predetermined heights (allowing for font display variations, editing the menu content, etc.). This script also controls highlighting of whichever section and page are open in the left and right column menus, respectively.*/

/*"/WEBWORK/" path MUST BE EDITED when this template setup is moved.*/

var PrimarySection = location.pathname.substring(location.pathname.indexOf("/webwork/")+9,location.pathname.lastIndexOf("/"));
var PrimaryRef = PrimarySection.substring(0, PrimarySection.indexOf("/"));
var SectionRef = PrimarySection.substring(PrimarySection.indexOf("/")+1, PrimarySection.length);
var Primaries = new Array(7);
Primaries[0]="AboutTheCollege";
Primaries[1]="VisitorsAndFriends";
Primaries[2]="FutureStudents";
Primaries[3]="CurrentStudents";
Primaries[4]="Alumni";
Primaries[5]="FacultyAndStaff";
Primaries[6]="NewsAndEvents";


image1 = new Image();
image1.src = "http://www.gc.maricopa.edu/webwork/Home/images/buttonbottomminus.gif";
image2 = new Image();
image2.src = "http://www.gc.maricopa.edu/webwork/Home/images/buttonbottomplus.gif";
image2 = new Image();
image2.src = "http://www.gc.maricopa.edu/webwork/Home/images/graypointer.gif";
image3 = new Image();
image3.src = "http://www.gc.maricopa.edu/webwork/Home/images/buttonbacktop.gif";


var timerlen = 5;
var slideAniLen = 200;

var timerID = new Array();
var startTime = new Array();
var obj = new Array();
var endHeight = new Array();
var moving = new Array();
var dir = new Array();
var toggled = "no";

function slidedown(objname,blockheight,linkid){
        if(moving[objname])
                return;

        if(document.getElementById(objname).style.display != "none")
                return; // cannot slide down something that is already visible
				
		document.getElementById(linkid).style.background = "url(http://www.gc.maricopa.edu/webwork/Home/images/buttonbottomminus.gif) no-repeat bottom left";
		document.getElementById(linkid).title = "Click to close this menu";


        moving[objname] = true;
        dir[objname] = "down";
        startslide(objname,blockheight,linkid);
}

function slideup(objname,blockheight,linkid){
        if(moving[objname])
                return;

        if(document.getElementById(objname).style.display == "none")
                return; // cannot slide up something that is already hidden	
				
		document.getElementById(linkid).style.background = "url(http://www.gc.maricopa.edu/webwork/Home/images/buttonbottomplus.gif) no-repeat bottom left";
		document.getElementById(linkid).title = "Click to re-open this menu";

        moving[objname] = true;
        dir[objname] = "up";
        startslide(objname,blockheight);
}

function startslide(objname,blockheight){
        obj[objname] = document.getElementById(objname);
	
        endHeight[objname] = blockheight;
        startTime[objname] = (new Date()).getTime();

        if(dir[objname] == "down"){
                obj[objname].style.height = "1px";
        }

        obj[objname].style.display = "block";

        timerID[objname] = setInterval('slidetick(\'' + objname + '\');',timerlen);
}

function slidetick(objname){
        var elapsed = (new Date()).getTime() - startTime[objname];

        if (elapsed > slideAniLen)
                endSlide(objname,blockheight)
        else {
                var d =Math.round(elapsed / slideAniLen * endHeight[objname]);
                if(dir[objname] == "up")
                        d = endHeight[objname] - d;

                obj[objname].style.height = d + "px";
        }

        return;
}

function endSlide(objname){
        clearInterval(timerID[objname]);

        if(dir[objname] == "up")
                obj[objname].style.display = "none";

        
		obj[objname].style.height = endHeight[objname] + "px";

        delete(moving[objname]);
        delete(timerID[objname]);
        delete(startTime[objname]);
        delete(endHeight[objname]);
        delete(obj[objname]);
        delete(dir[objname]);

        return;
}
function toggleSlide(id){
	var objname='sm'+id;
	var linkid='m'+id;
	for (var i = 1; i <= 10; i++) {
		if(document.getElementById('sm'+i)){
			/*if(PrimaryRef!=Primaries[i-1]){*/
			if(document.getElementById('sm'+i).style.display=="block"){
			bh=document.getElementById('sm'+i).offsetHeight;
			slideup('sm'+i,bh,'m'+i);
			/*}*/
			}
		}
	}
	
  if(document.getElementById(objname).style.display == "none"){
    // div is hidden, so let's slide down
	document.getElementById(objname).style.display="block";
	blockheight=document.getElementById(objname).offsetHeight;
	document.getElementById(objname).style.display="none";
    slidedown(objname,blockheight,linkid);
  }else{
    // div is not hidden, so slide up
	/*if((PrimaryRef!=Primaries[id-1])||(toggled=="yes")){*/
	blockheight=document.getElementById(objname).offsetHeight;
    slideup(objname,blockheight,linkid);
	/*}*/
  }
	var toggled="yes";
}

function setMenus(){
	if(toggled=="no"){
	for (var i = 1; i <= 10; i++) {
		if(document.getElementById('sm'+i)){
			if(Primaries[i-1]!=PrimaryRef){
			document.getElementById('sm'+i).style.display="none";
			document.getElementById('sm'+i).style.overflow="hidden";
			}
			else{
			document.getElementById('sm'+i).style.display="block";
			document.getElementById('m'+i).style.background = "url(http://www.gc.maricopa.edu/webwork/Home/images/buttonbottomminus.gif) no-repeat bottom left";
			}
		}
	}
	if(document.getElementById(SectionRef)){
	document.getElementById(SectionRef).style.background="#4A4D4A url(http://www.gc.maricopa.edu/webwork/Home/images/graypointer.gif) bottom right no-repeat";
	}
	if(document.getElementById(SectionRef+'2')){
	document.getElementById(SectionRef+'2').style.background="#4A4D4A url(http://www.gc.maricopa.edu/webwork/Home/images/graypointer.gif) bottom right no-repeat";
	}
	if(document.getElementById(SectionRef+'3')){
	document.getElementById(SectionRef+'3').style.background="#4A4D4A url(http://www.gc.maricopa.edu/webwork/Home/images/graypointer.gif) bottom right no-repeat";
	}
}
}

function pageHighlight(){
	if (location.href.substring(location.href.lastIndexOf("/"))=="/"){
		if (document.getElementById('index.htm')){
		document.getElementById("index.htm").style.color="#B51C21";
		document.getElementById("index.htm").style.textDecoration="none";
		}
		else if (document.getElementById(SectionRef+'/index.htm')){
		document.getElementById(SectionRef+"/index.htm").style.color="#B51C21";
		document.getElementById(SectionRef+"/index.htm").style.textDecoration="none";
		}
	}
	else {
	if (document.getElementById(location.href.substring(location.href.lastIndexOf("/")+1))){
	document.getElementById(location.href.substring(location.href.lastIndexOf("/")+1)).style.color="#B51C21";
	document.getElementById(location.href.substring(location.href.lastIndexOf("/")+1)).style.textDecoration="none";
	}
	}
}


function highlight(sid){
if(SectionRef!=sid){
document.getElementById(sid).style.background='#999999 url(http://www.gc.maricopa.edu/webwork/Home/images/graypointer.gif) bottom right no-repeat';
}
}
function unhighlight(sid){
if (SectionRef!=sid){
document.getElementById(sid).style.background='#7B7D7B url(http://www.gc.maricopa.edu/webwork/Home/images/graypointer.gif) bottom right no-repeat';
}
}
function expand(divid){
if (document.getElementById(divid).style.display){
	if (document.getElementById(divid).style.display=="none"){
		document.getElementById(divid).style.display="inline";
		if (document.getElementById(divid+'h')){
			document.getElementById(divid+'h').style.background="url(http://www.gc.maricopa.edu/webwork/Home/images/minusalone.gif) top left no-repeat";
		}
	}
	else {
		document.getElementById(divid).style.display="none";
		if (document.getElementById(divid+'h')){
			document.getElementById(divid+'h').style.background="url(http://www.gc.maricopa.edu/webwork/Home/images/plusalone.gif) top left no-repeat";
		}
	}
}
else {
document.getElementById(divid).style.display="none";
expand(divid);
}
}