/***********************************************
* Derived from: Switch Content script- ? 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="on" //Enable saving state of content structure using session cookies? (on/off)
var collapseprevious="yes" //Collapse previously open content when opening present? (yes/no)

var contractsymbol='- ' //HTML for contract symbol. For image, use: <img src="whatever.gif">
var expandsymbol='+ ' //HTML for expand symbol.

if (document.getElementById){
        document.write('<style type="text/css">')
        document.write('.switchcontent{display:none;}')
        document.write('</style>')
}

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 thestate=(ec=="expand")? "block" : "none"
        var inc=0
        while (ccollect[inc]){
                ccollect[inc].style.display=thestate
                inc++
        }
        revivestatus()
        SaveCurrentState();
}


function contractcontent(omit){
        var inc=0
        while (ccollect[inc]){
                if (ccollect[inc].id!=omit)
                        ccollect[inc].style.display="none"
                inc++
        }
}

function expandcontent(curobj, cid){
        var spantags=curobj.getElementsByTagName("SPAN")
        var showstateobj=getElementbyClass(spantags, "showstate")
        if (ccollect.length>0){
                if (collapseprevious=="yes")
                        contractcontent(cid)
                document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"
                if (showstateobj.length>0){ //if "showstate" span exists in header
                        if (collapseprevious=="no")
                                showstateobj[0].innerHTML=(document.getElementById(cid).style.display=="block")? contractsymbol : expandsymbol
                        else
                                revivestatus()
                }
        }
        SaveCurrentState();
}

function revivecontent(){
        contractcontent("omitnothing")
        selectedItem=getselectedItem()
        selectedComponents=selectedItem.split("|")
        for (i=0; i<selectedComponents.length-1; i++)
        {
                var el = document.getElementById(selectedComponents[i]);
                if (el != null)
                	el.style.display = "block";
        }
}

function revivestatus(){
        var inc=0
        while (statecollect[inc]){
                if (ccollect[inc].style.display=="block")
                        statecollect[inc].innerHTML=contractsymbol
                else
                        statecollect[inc].innerHTML=expandsymbol
                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('section') != ""){
                selectedItem=get_cookie('section')
                return selectedItem
        }
        else
                return ""
}

function SaveCurrentState(){
        if (!_loaded)
                return;

        selectedItem = "";
        for (var i = 0; i < ccollect.length; i++)
        {
                if (ccollect[i].style.display == "block")
                        selectedItem += ccollect[i].id + "|";
        }

        document.cookie = "section=" + selectedItem
}

var _loaded = false;
function do_onload(){
        var alltags=document.all? document.all : document.getElementsByTagName("*")
        ccollect=getElementbyClass(alltags, "switchcontent")
        statecollect=getElementbyClass(alltags, "showstate")
        revivecontent();
        revivestatus()
        _loaded = true;
}