// -*- javascript-mode -*-b

dojo.require("dojo.lfx.*");

function toggleFaq(ix) {
   var question = dojo.byId('q' + ix);
   var answer = dojo.byId('a' + ix);
   var faq = dojo.byId('faq' + ix);
   var display = question.getAttribute('displayed');

   if (display == 'on') {
     dojo.lfx.toggle.fade.hide(answer, 650);
     dojo.html.removeClass(faq, "active");
     display = 'off';
   } else {
     closeAnswers(ix);
     dojo.lfx.toggle.fade.show(answer, 750);
     dojo.html.addClass(faq, "active");
     display = 'on';
   }
   question.setAttribute('displayed', display);
   return(false);
}

function closeAnswers(except) {
  var ok = true;
  var ix=0;
  while (ok) {
    ix = ix + 1;
    if (ix == except) {
      ix = ix + 1;
    }
    var question = dojo.byId('q' + ix);
    if (question) {
      var answer = dojo.byId('a' + ix);
      dojo.lfx.toggle.plain.hide(answer, 0);
      question.setAttribute('displayed','off');
      // strips the hidden tag, which is just there to prevent JS flicker on IE.
      if (except == -1) { dojo.html.removeClass(answer, "hidden"); }
      var faq = dojo.byId('faq' + ix);
      dojo.html.removeClass(faq, "active");
    } else {
      ok = false;
    }
  }
}

function faqInit() {
  closeAnswers(-1);
}

dojo.addOnLoad(faqInit);
