var convertToArray = function(nodes) {
    var array = null;
		    array = new Array();
				var i = 0; 
				var len = nodes.length;
				while (i < len) {
				    array.push(nodes[i]);
				    i++;
				}
		return array;
};

var getElementByClassCustom = function(className) {
    /*works only on <div id="contents"> to minimise selection */
    var contentsElement = document.getElementById("contents");
		var possibleElements = contentsElement.getElementsByTagName("*");
		possibleElements = convertToArray(possibleElements);
		var len = possibleElements.length;
	  var elementsWithClass = [];
		var i = 0;
		while (i<len) {
		    if (possibleElements[i].className === className) {
				    elementsWithClass.push(possibleElements[i]);
				}
		    i++;
	  }
		return elementsWithClass;
};

var EventUtil = {
    
		addHandler: function(element, type, handler) {
        if(element.addEventListener) {
		        element.addEventListener(type, handler, false);
				} else if (element.attachEvent) {
			      element.attachEvent("on" + type, handler);
				} else {
				    element["on" + type] = handler;
				}
		},
		
		getEvent: function(event) {
		    return event ? event : window.event;
	  },
		
		getTarget: function(event) {
		    return event.target || event.srcElement;
		},
		
		preventDefault: function(event) {
		    if (event.preventDefault) {
				    event.preventDefault();
				} else {
				    event.returnValue = false;
				}
		},
		
		removeHandler: function(element, type, handler) {
        if(element.removeEventListener) {
		        element.removeEventListener(type, handler, false);
				} else if (element.detachEvent) {
			      element.detachEvent("on" + type, handler);
			  } else {
				    element["on" + type] = null;
				}
		},
		
		stopPropagation: function(event) {
		    if (event.stopPropagation) {
				    event.stopPropagation();
			  } else {
				    event.cancelBubble = true;
				}
	 }
};

var displayDescription = function(event) {
    var target = EventUtil.getTarget(event);
		var targetId = target.id;
    var coreTargetId = targetId.slice(1);
		var cdPrepend = "fa";
		var clueDescriptionId = cdPrepend.concat(coreTargetId);
		var clueDescriptionIdElement = document.getElementById(clueDescriptionId);
		clueDescriptionIdElement.style.display = "inline";
};

var closeDescription = function(event) {
    var target = EventUtil.getTarget(event);
		var targetId = target.id;
    var coreTargetId = targetId.slice(2);
		var cdPrepend = "fa";
		var clueDescriptionId = cdPrepend.concat(coreTargetId);
		var clueDescriptionIdElement = document.getElementById(clueDescriptionId);
		clueDescriptionIdElement.style.display = "none";
};

var callDisplayDescription = function(className) {
    var elementsToDisplay = getElementByClassCustom (className);
    var lengthElementsToDisplay = elementsToDisplay.length;
		var i = 0;
		while (i < lengthElementsToDisplay) {
		    EventUtil.addHandler (elementsToDisplay[i], "click", displayDescription);
		    i++;
		}
};

var callCloseDescription = function(className) {
    var elementsToDisplay = getElementByClassCustom (className);
    var lengthElementsToDisplay = elementsToDisplay.length;
		var i = 0;
		while (i < lengthElementsToDisplay) {
		    EventUtil.addHandler (elementsToDisplay[i], "click", closeDescription);
		    i++;
		}
};

var callMenu = function(){
    var header = document.getElementById("menu_header_b");
	  
};



callMenu();
callDisplayDescription("show_informationFAQs");
callCloseDescription("x_button");

