// Copyright 2006 | Thierry Koblentz - www.TJKDesign.com All Rights reserved
// ToggleDL() Version 1.5.4 report bugs or errors to thierry@tjkdesign.com

function addEvent(obj, evType, fn, useCapture){
  if (obj.addEventListener){
    obj.addEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.attachEvent){
    var r = obj.attachEvent("on"+evType, fn);
    return r;
  } else {
    alert("Handler could not be attached");
  }
}

function WriteControls() {// write html controls - no good as ie7's js engine can't see these virtual tags
	
	var controls = document.createElement("div");
	controls.setAttribute("id", "controls");

	var openButton = document.createElement("a");
	openButton.setAttribute("id", "ToggleON");
	var openText = document.createTextNode("Open All");
	openButton.appendChild(openText);

	var closeButton = document.createElement("a");
	closeButton.setAttribute("id", "ToggleOFF");
	var closeText = document.createTextNode("Close All");
	closeButton.appendChild(closeText);

	controls.appendChild(openButton);
	controls.appendChild(closeButton);


	var faqList = document.getElementById("faq_dl");
	faqList.parentNode.insertBefore(controls, faqList);
}

function doToggleDL(x){
	var zDD=document.getElementById('faq_dl').getElementsByTagName('dd');
	var zDT=document.getElementById('faq_dl').getElementsByTagName('dt');	
		zDD[x].className=(zDD[x].className=='hideDD')?'showDD':'hideDD';
		zDT[x].className=(zDT[x].className=='DTplus')?'DTminus':'DTplus';	
}
function ToggleDLopen(){//we open all of them
	var zDD=document.getElementById('faq_dl').getElementsByTagName('dd');
	var zDT=document.getElementById('faq_dl').getElementsByTagName('dt');	
	for(var i=0;i<zDT.length;i++){
		zDD[i].className='showDD';
		zDT[i].className='DTminus';
	}
	return false;
}
function ToggleDLclose(){//we close all of them	
	var zDD=document.getElementById('faq_dl').getElementsByTagName('dd');
	var zDT=document.getElementById('faq_dl').getElementsByTagName('dt');	
	for(var i=0;i<zDT.length;i++){
		zDD[i].className='hideDD';
		zDT[i].className='DTplus';
	}
	return false;	
}
function ToggleDL(){
if (document.getElementById && document.getElementsByTagName){			
	var zDT=document.getElementById('faq_dl').getElementsByTagName('dt');
	var zDD=document.getElementById('faq_dl').getElementsByTagName('dd');
	var ToggleON = document.getElementById('ToggleON');
	var ToggleOFF = document.getElementById('ToggleOFF');	
	if (ToggleON && ToggleOFF){// Show All - Hide All "links"
		ToggleON.onclick = ToggleDLopen;
		ToggleON.title = "Show all answers";
		ToggleON.href = "#";		
		ToggleOFF.onclick = ToggleDLclose;	
		ToggleOFF.title = "Hide all answers";
		ToggleOFF.href = "#";
	}
	for(var i=0;i<zDT.length;i++){// write invisible links and hide all dds
		var zContent = zDT[i].innerHTML;
		var zHref = "<a href='#' onclick=\"doToggleDL("+i+");return false\" title='Show/hide the answer'>";
		zDT[i].innerHTML = zHref + zContent + "</a>";
		zDD[i].className='hideDD';
		zDT[i].className='DTplus';
		}
	}
}


//addEvent(window, 'load', WriteControls, false);
addEvent(window, 'load', ToggleDL, false);



