

// * COLLAPSE * //

Event.observe(window, "load", Collapse);

var collapsibles;
var collapseMode = "single";
function Collapse(){

    if(collapseMode==null) { collapseMode = "single" ; }
    
    collapsibles = $$('div.collapse');

    for(i = 0; i < collapsibles.length; i++)
    {            
        // create a new div to replace the old one
        var replacementDiv = document.createElement('div');    
        $(replacementDiv).id = "collapse_"+i;            
        //$(replacementDiv).addClassName("collapse");   
        $(replacementDiv).className = collapsibles[i].className;  
        if(collapsibles[i].hasClassName("open")){ 
            $(replacementDiv).addClassName("open");
        }
        else{
            $(replacementDiv).addClassName("closed");        
        }
         
    
        // move the header into the new div
        var header = collapsibles[i].getElementsByTagName('h3');
        if(header.length>0){         
            h3 = document.createElement('h3');    
            a = document.createElement('a');
            $(a).href="javascript:CollapseShowHide('" + $(replacementDiv).id + "')";
            $(a).insert($(header[0]).innerHTML);
            $(h3).insert($(a));
            $(replacementDiv).insert(h3);
            $(header[0]).remove();
            
            // put the remaining content into a new div so that it can be turned off
            var contentDiv = document.createElement('div');
            $(contentDiv).addClassName("collapseContent");
        
            $(contentDiv).insert(collapsibles[i].innerHTML);  
         
            var offHeight = collapsibles[i].offsetHeight;
 
            //prevent negative height value
            if(offHeight<20){offHeight = 20;}
                       
            $(contentDiv).setStyle({ height: offHeight-20+'px' }); 
 
            $(replacementDiv).insert(contentDiv);
                 
            collapsibles[i].replace($(replacementDiv));       
        
        
            // close them up 
            if(!$(replacementDiv).hasClassName("open")){ 
            new Effect.BlindUp($(contentDiv), {duration:0});
            
            
        }           
            
        }         
    }      
    TrackRSS();
    TrackFAQ();
 } 

function CollapseShowHide(id){
    
    collapsibles = $$('div.collapse');
    for(i = 0; i < collapsibles.length; i++)
    {             
    
        if(collapseMode != null && collapseMode == "accordian"){
            // close open divs
            if(collapsibles[i].hasClassName("open") && collapsibles[i].id != id){
            
                var contentDiv = collapsibles[i].getElementsByClassName("collapseContent");
                if(contentDiv.length>0)
                {
                   new Effect.BlindUp($(contentDiv[0]), {duration:0.4});
                   collapsibles[i].removeClassName("open");              
                }            
            }    
        }
        
        // open targeted div
        if(collapsibles[i].id == id && !collapsibles[i].hasClassName("open") ){
        
            var contentDiv = collapsibles[i].getElementsByClassName("collapseContent");
            if(contentDiv.length>0)
            {
               new Effect.BlindDown($(contentDiv[0]), {duration:0.4,  scaleContent: false});
               collapsibles[i].addClassName("open");   
              
            }            
        }    
        
        else if(collapsibles[i].id == id && collapsibles[i].hasClassName("open")){
            var contentDiv = collapsibles[i].getElementsByClassName("collapseContent");
            if(contentDiv.length>0)
            {
               new Effect.BlindUp($(contentDiv[0]), {duration:0.4});
               collapsibles[i].removeClassName("open");              
            }                    
        }
    }    
    
    
}

// * END OF COLLAPSE * //



