// Deals with the expanding and collapsing of FAQs

// This is a cross browser event handler
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");
  }
}

// This does the initial hiding of the answers
function hideanswers() {
  if (!document.getElementsByTagName) return false;
	var links = document.getElementsByTagName("div");
  	for (var i=0; i < links.length; i++) {
    if (links[i].className.match("answer")) {
  		links[i].style.display = 'none';
    }
  }
}

// This controls what happens when a click occurs
function linkclicked(e) {
  if (!document.getElementsByTagName) return false;
	if (window.event) {
		var whichlink = window.event.srcElement;
	}
	else if (e) {
	var whichlink = e.target;
	} else {
	  return false;
	}
	 while (whichlink.nodeName.toLowerCase() != 'a' &&
      whichlink.nodeName.toLowerCase() != 'body')
    whichlink = whichlink.parentNode;
	var findanswer = whichlink.parentNode.getElementsByTagName("div");
  for (var i=0; i < findanswer.length; i++) {
    if (findanswer[i].className.match("answer"))  {
			if (findanswer[i].style.display.match("none"))  {
			findanswer[i].style.display = 'block';
		}
		else  {
			findanswer[i].style.display = 'none';
		}
		}
	}
	if (window.event) {
      window.event.cancelBubble = true;
      window.event.returnValue = false;
    }
    if (e && e.stopPropagation && e.preventDefault) {
      e.stopPropagation();
      e.preventDefault();
    }
  }
// This listens for the click using the addEvent function
function linkclicklistener(e) {
  if (!document.getElementsByTagName) return false;
  var links = document.getElementsByTagName("a");
  for (var i=0; i < links.length; i++) {
    if (links[i].className.match("lQuestion")) {
      addEvent(links[i], 'click', linkclicked, false);
	  }
  }
}

function showother(e) {
  if (!document.getElementsByTagName) return false;
  
	if (window.event) {
		var whichlink = window.event.srcElement;
	}
	else if (e) {
	  var whichlink = e.target;
	} else {
	  return false;
	}
}

//hide honeypot
function hideSPAM() { 
	var spamField = document.getElementById("trap"); 
	if (spamField){
		var spamContainer = spamField.parentNode; 
		spamContainer.removeChild(spamField); 
		}
}

// check for cookies
function getCookie(c_name) {
    if (document.cookie.length > 0) {
        c_start = document.cookie.indexOf(c_name + "=");
        if (c_start != -1) {
            c_start = c_start + c_name.length + 1;
            c_end = document.cookie.indexOf(";", c_start);
            if (c_end == -1) c_end = document.cookie.length;
            return true;
        }
    }
    return false;
}

// Runs all the listed functions on the loading of the window
window.onload = function() {
    linkclicklistener();
    hideSPAM();
    hideanswers();
    hideOptionalQuestions();
}
