/***********************************************
* Switch Content script II- © Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for legal use. Last updated April 2nd, 2005.
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

var enablepersist="off" //Enable saving state of content structure using session cookies? (on/off)
var memoryduration="0" //persistence in # of days

var contractsymbol='images/minus.gif' //Path to image to represent contract state.
var expandsymbol='images/plus.gif' //Path to image to represent expand state.

/////No need to edit beyond here //////////////////////////

function getElementbyClass(rootobj, classname){
var temparray=new Array()
var inc=0
var rootlength=rootobj.length
for (i=0; i<rootlength; i++){
if (rootobj[i].className==classname)
temparray[inc++]=rootobj[i]
}
return temparray
}

function sweeptoggle(ec){
var inc=0
while (ccollect[inc]){
ccollect[inc].style.display=(ec=="contract")? "none" : ""
inc++
}
revivestatus()
//document.getElementById("scroller").style.top = '0px'
document.getElementById("contentmiddle").style.top = '0px'
//fnScrollerStartup(false);
}


function expandcontent(curobj, cid){
  if (ccollect.length>0){
  document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="none")? "none" : ""
  curobj.src=(document.getElementById(cid).style.display=="none")? expandsymbol : contractsymbol
	if (curobj.src.indexOf("plus") > 0) {
	  switch (cid) {
		case "sc6":	
		case "sc8":	
		case "sc9": 
			fnResetDivContentMenuExpand(cid);
			//fnScrollerStartup(true);
		break;			
		//default:fnScrollerStartup(true);
	  }
	} else {
	  //fnScrollerStartup(false);
	}
  }
}


function revivecontent(){
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|")
for (i=0; i<selectedComponents.length-1; i++)
document.getElementById(selectedComponents[i]).style.display="none"
}

function revivestatus(){
var inc=0
while (statecollect[inc]){
if (ccollect[inc].style.display=="none")
statecollect[inc].src=expandsymbol
else
statecollect[inc].src=contractsymbol
inc++
}
}

function get_cookie(Name) { 
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) { 
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function getselectedItem(){
if (get_cookie(window.location.pathname) != ""){
selectedItem=get_cookie(window.location.pathname)
return selectedItem
}
else
return ""
}

function saveswitchstate(){
var inc=0, selectedItem=""
while (ccollect[inc]){
if (ccollect[inc].style.display=="none")
selectedItem+=ccollect[inc].id+"|"
inc++
}
if (get_cookie(window.location.pathname)!=selectedItem){ //only update cookie if current states differ from cookie's
var expireDate = new Date()
expireDate.setDate(expireDate.getDate()+parseInt(memoryduration))
document.cookie = window.location.pathname+"="+selectedItem+";path=/;expires=" + expireDate.toGMTString()
}
}

function menu_load(){
uniqueidn=window.location.pathname+"firsttimeload"
var alltags=document.all? document.all : document.getElementsByTagName("*")
ccollect=getElementbyClass(alltags, "switchcontent")
statecollect=getElementbyClass(alltags, "showstate")

//if (enablepersist=="on" && get_cookie(window.location.pathname)!="" && ccollect.length>0)
//revivecontent()
if (ccollect.length>0 && statecollect.length>0)
sweeptoggle("contract");
}

function fnSetMenuLocation(x){
var lyr;
var alltags=document.all? document.all : document.getElementsByTagName("*")
ary=getElementbyClass(alltags, "headers")
	switch(x) {
	case 5: //measure
		lyr1 = "Measure"
		lyr2 = ""
	break;
	case 4: //select feature
		lyr1 = "Select"
		lyr2 = "Layers"
	break;
	case 8: //buffer point
	case 7: //buffer line
	case 6: //buffer feature
		lyr1 = "Buffer"
		lyr2 = "Layers"
	break;
	case 9: //identify single
		lyr1 = "House"
		lyr2 = ""
	break;
	default: lyr1 = ""
	}
for (i=0;i<ary.length; i++){
	if (ary[i].innerHTML.indexOf(lyr1)>0 || ary[i].innerHTML.indexOf(lyr2)>0) {
		ccollect[i].style.display="block"
		statecollect[i].src=contractsymbol
	} else {
		ccollect[i].style.display="none"
		statecollect[i].src=expandsymbol
	}
}
//fnScrollerStartup(false);
}

if (enablepersist=="on" && document.getElementById)
window.onunload=saveswitchstate

