/* 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.*/


/* START:  /FutureStudents/WelcomeToGCC/Pages/Default.aspx            /about/Pages/faq.aspx  */
var temp1= location.pathname.substring(location.pathname.indexOf("/")+1);

var temp2= temp1.substring(temp1.indexOf("/")+1);

/* EXAMPLE - FutureStudents/WelcomeToGCC/Pages                        /about/Pages           */
/* EXAMPLE - FutureStudents                                           /about              */
var PrimarySection = temp2.substring(temp2.indexOf("/")+1,temp2.lastIndexOf("/"));

var PrimaryRef = PrimarySection.substring(0, PrimarySection.indexOf("/"));
/* EXAMPLE - WelcomeToGCC/Pages                                       /Pages                 */
var SectionRef = PrimarySection.substring(PrimarySection.indexOf("/")+1, PrimarySection.length);

//var server = "http://mosssingleserve";

//var Primaries = new Array(7);
//Primaries[0]="AboutThe";
//Primaries[1]="VisitorsAndFriends";
//Primaries[2]="FutureStudents";
//Primaries[3]="CurrentStudents";
//Primaries[4]="Alumni";
//Primaries[5]="FacultyAndStaff";
//Primaries[6]="NewsAndEvents";


//var QLHome = new Array("Enroll","CampusTours","Maps","GCCNorth","OnlineStudentServices","eCourses","eCashier");
//var QL0 = new Array("Enroll","News","Calendars","Athletics","SpeakersBureau");
//var QL1 = new Array("Enroll","News","Calendars","Directory","Athletics");
//var QL2 = new Array("Enroll","AcademicCalendar","Catalog","Instructional","Tuition","Degrees");
//var QL3 = new Array("Calendars","StudentWebMail","Directory","Voice","Tuition");
//var QL4 = new Array("Enroll","News","Maps","Directory");
//var QL5 = new Array("StrategicPlan","Mission","Instructional","Degrees");
//var QL6 = new Array("Enroll","Alumni","Athletics","Voice");


image1 = new Image();
image1.src = "/_layouts/images/GCCCustomMasterPageImages/buttonbottomminus.gif";
image2 = new Image();
image2.src = "/_layouts/images/GCCCustomMasterPageImages/buttonbottomplus.gif";
image2 = new Image();
image2.src = "/_layouts/images/GCCCustomMasterPageImages/graypointer.gif";
image3 = new Image();
image3.src = "/_layouts/images/GCCCustomMasterPageImages/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(/images/buttonbottomminus.gif) no-repeat bottom left";
        document.getElementById(linkid).style.background = "url(/_layouts/images/GCCCustomMasterPageImages/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(/_layouts/images/GCCCustomMasterPageImages/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"){
	var homeql="yes";
	// Gets the URL without the aspx ending. eg. http://mosssingleserve/program/admissions/Pages/
	var sectionUrl = location.href.substring(0,location.href.lastIndexOf("/")).toLowerCase();
	// Get the URL to look like the default page. eg. http://mosssingleserve/program/admissions/Pages/Default.aspx
	sectionUrl = sectionUrl + '/default.aspx';
	var loc = location.href.toLowerCase();

	for (var i = 1; i <= 10; i++) {
		if(document.getElementById('sm'+i)){
		// Hide all the menus
                    document.getElementById('sm'+i).style.display="none";
			document.getElementById('sm'+i).style.overflow="hidden";
		}
		
		// Find the sub-sub menu and set it to be selected as well as open the sub-menu it is associated with.
		for (var j = 1; j <= 10; j++) {
		    if(document.getElementById('sm'+i+j)){
		     
                          if(document.getElementById('sm'+i+j).href == loc + '' ||
		           document.getElementById('sm'+i+j).href == sectionUrl){

                               document.getElementById('sm'+i).style.display="block";
			        document.getElementById('sm'+i).style.background = "url(/_layouts/images/GCCCustomMasterPageImages/buttonbottomminus.gif) no-repeat bottom left";
			        document.getElementById('sm'+i+j).style.background="#4A4D4A url(/_layouts/images/GCCCustomMasterPageImages/graypointer.gif) bottom right no-repeat";
			        break;
			    }	           
			    else {
			        document.getElementById('sm'+i).style.display="none";
			        document.getElementById('sm'+i).style.overflow="hidden";
			    }
		    }
		}
	}
}
}




//function pageHighlight(){
//	if (location.href.substring(location.href.lastIndexOf("/"))=="/"){
//		if (document.getElementById('default.aspx')){
//		document.getElementById("default.aspx").style.color="#B51C21";
//		document.getElementById("default.aspx").style.textDecoration="none";
//		}
//		else if (document.getElementById(SectionRef+'/default.aspx')){
//		document.getElementById(SectionRef+"/default.aspx").style.color="#B51C21";
//		document.getElementById(SectionRef+"/default.aspx").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(/_layouts/images/GCCCustomMasterPageImages/graypointer.gif) bottom right no-repeat';
}
}


function unhighlight(sid){
if (SectionRef!=sid){
document.getElementById(sid).style.background='#7B7D7B url(/_layouts/images/GCCCustomMasterPageImages/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(/_layouts/images/GCCCustomMasterPageImages/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(/_layouts/images/GCCCustomMasterPageImages/plusalone.gif) top left no-repeat";
		}
	}
}
else {
document.getElementById(divid).style.display="none";
expand(divid);
}
}