﻿// Fichier JScript

var enablepersist="off" //Enable saving state of content structure using session cookies? (on/off)
var collapseprevious="no" //Collapse previously open content when opening present? (yes/no)

var contractsymbol='<img src="images/bouton_moins.gif"> ' //HTML for contract symbol. For image, use: <img src="whatever.gif">
var expandsymbol='<img src="images/bouton_plus.gif"> ' //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()
}


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()
            }
    }
}

function revivecontent(){
contractcontent("omitnothing")
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|")
for (i=0; i<selectedComponents.length-1; i++)
document.getElementById(selectedComponents[i]).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(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=="block")
//selectedItem+=ccollect[inc].id+"|"
//inc++
//}
//document.cookie=window.location.pathname+"="+selectedItem
//}

function do_onload(){
    uniqueidn=window.location.pathname+"firsttimeload"
    var alltags=document.all? document.all : document.getElementsByTagName("*")
    ccollect=getElementbyClass(alltags, "switchcontent")
    statecollect=getElementbyClass(alltags, "showstate")
    if (enablepersist=="on" && ccollect.length>0){
        document.cookie=(get_cookie(uniqueidn)=="")? uniqueidn+"=1" : uniqueidn+"=0" 
        firsttimeload=(get_cookie(uniqueidn)==1)? 1 : 0 //check if this is 1st page load
        if (!firsttimeload)
        revivecontent()
    }
    if (ccollect.length>0 && statecollect.length>0)
        revivestatus()
}

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