/***********************************************
* Contractible Headers script- © Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

var enablepersist="on" //Enable saving state of content structure? (on/off)

if (document.getElementById){
document.write('<style type="text/css">')
document.write('.switchcontent{display:none; height:auto; width:auto;}')
document.write('</style>')
}

function getElementbyClass(classname){
ccollect=new Array()
var inc=0
var alltags=document.all? document.all : document.getElementsByTagName("*")
for (i=0; i<alltags.length; i++){
if (alltags[i].className==classname)
ccollect[inc++]=alltags[i]
}
}

/*
	Following 2 functions are updated and updated versions 
	can be seen below.
*/
/*
function contractcontent(omit){
var inc=0
while (ccollect[inc]){
if (ccollect[inc].id!=omit)
ccollect[inc].style.display="none"
inc++
}
}
/*
function expandcontent(cid){
if (typeof ccollect!="undefined"){
contractcontent(cid)
document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"
selectedItem=cid+"|"+document.getElementById(cid).style.display
}
}
*/

function contractcontent(omit){
	var inc=0;
	while (ccollect[inc]){
		if (ccollect[inc].id!=omit)
		{
			// Sub-menu that will not be shown currently.
			if(ccollect[inc].tagName=="td")
			{	
				// Element is a Table cell(TD).
				// Inorder to display properly in Firefox, row have to be hidden.
				// Hide this table cell's parent i.e row(TR)
				ccollect[inc].parentNode.style.display="none";
			}
			else
			{	// Non-table cell element.
				// Normal hide.
				ccollect[inc].style.display="none";
			}
		}
		inc++
	}
}

function expandcontent(cid){
if (typeof ccollect!="undefined"){
contractcontent(cid)

// Get currently to be show sub-menu element.
// Will save time.
var element=document.getElementById(cid);	
if(element)
{	
	// Sub-menu Element is found.
	if(element.tagName.toLowerCase()=="td")
	{	// Sub-menu element is table cell(TD).
		// Inorder to display properly in Firefox, row have to be shown.
		// If column is shown, menu sometimes will be shown 
		// to the right of menu.
		element.parentNode.style.display=(element.parentNode.style.display=="block"?"none":"block");
		// Set display attribute of element to block if case it is set to none. 
		element.style.display="block";
		// Set height attribute to auto so that element resizes to content height.
		element.parent.style.height="auto";
	}
	else
	{	// Non column element.
		// Set display property.
		element.style.display=(element.style.display=="block"?"none":"block");
		// Set height attribute to auto so that element resizes to content height.
		element.style.height="auto";
	}
	selectedItem=cid+"|"+element.style.display
}
/*  Code by previous coder */
//document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"
//selectedItem=cid+"|"+document.getElementById(cid).style.display
}
}


function revivecontent(){
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|")
contractcontent(selectedComponents[0])
document.getElementById(selectedComponents[0]).style.display=selectedComponents[1]
}

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(){
if (typeof selectedItem!="undefined")
document.cookie=window.location.pathname+"="+selectedItem
}

function do_onload(){
getElementbyClass("switchcontent")
if (enablepersist=="on" && getselectedItem()!="")
revivecontent()
}


if (window.addEventListener)
window.addEventListener("load", do_onload, false)
else if (window.attachEvent)
window.attachEvent("onload", do_onload)
else if (document.getElementById)
window.onload=do_onload

if (enablepersist=="on" && document.getElementById)
window.onunload=saveswitchstate

