function findFaqs() {
  var faq_elems = YAHOO.util.Dom.getElementsByClassName('faq', 'dl'); 
  for (var idx in faq_elems)
  {
    YAHOO.util.Event.addListener(faq_elems[idx], "click", function(e) { showHideAnswer(e); });
  }
}

function showHideAnswer(e) {
  var elem = (e.target ? e.target : e.srcElement);

  if (elem.tagName == 'DT') {
    var answer = elem.nextSibling;
    if (YAHOO.util.Dom.hasClass(answer, "showing")) {
      YAHOO.util.Dom.removeClass(answer, "showing");
    } else {
      YAHOO.util.Dom.addClass(answer, "showing");
    }
  }
}

function showAllAnswers(bShow) {
  var faq_elems = YAHOO.util.Dom.getElementsByClassName('faq', 'DL'); 
  for (var idx in faq_elems)
  {
    if (idx != parseInt(idx)) { continue; }

    var ans_elems = faq_elems[idx].getElementsByTagName("DD")

    for (var aidx in ans_elems) 
    {
      if (aidx != parseInt(aidx)) { continue; }
      if (bShow) {
        YAHOO.util.Dom.addClass(ans_elems[aidx], "showing");
      } else {
        YAHOO.util.Dom.removeClass(ans_elems[aidx], "showing");
      }
    }
  }
}

findFaqs();

