function ToggleFAQ(id) {
  e = $('faq'+id);
  if (e) {
    if (e.className == 'off') {
      // change class
      e.className = 'on';
      
      // track view
      var url    = '_track_faq_view.php';
      var pars   = 'id=' + id;
      var myAjax = new Ajax.Request(
        url,
        {
          method:'get',
          parameters:pars
        }
      );
    } else {
      // change class
      e.className = 'off';
    }
  }
}
function OpenFAQs() {
  var list  = document.getElementsByTagName('dl');
  var nodes = $A(list);
  var regex = new RegExp('faq([0-9])+');
  
  // find the matching nodes
  nodes = nodes.findAll(
    function(node) {
      return regex.test(node.id);
    }
  );
  
  // show all
  nodes.each(
    function(node) {
      node.className = 'on';
    }
  );
  
  // switch link
  Element.hide('open-all');
  Element.show('close-all');
}
function CloseFAQs() {
  var list  = document.getElementsByTagName('dl');
  var nodes = $A(list);
  var regex = new RegExp('faq([0-9])+');
  
  // find the matching nodes
  nodes = nodes.findAll(
    function(node) {
      return regex.test(node.id);
    }
  );
  
  // show all
  nodes.each(
    function(node) {
      node.className = 'off';
    }
  );
  
  // switch link
  Element.hide('close-all');
  Element.show('open-all');
}
function GetFAQCategoryControl() {
  var url    = '/_get_faqs_category_control/';
  var myAjax = new Ajax.Updater(
    'category-controller',
    url,
    {
      method:'get'
    }
  );
  Element.show('category-controller');
}
function SelectFAQCategory(id) {
  // scroll to category header
  Element.scrollTo('category' + id);
  
  // clear select
  if ($('selected-category')) { $('selected-category').selectedIndex = ''; }
}


