﻿var FAQ = function()
{
    var expandedItem = null;
    
    if(typeof(ye) == "undefined" || typeof(yd) == "undefined")
    {
        return false;
    }
    
    // Initializing
    var elements = yd.getElementsByClassName("question");
    var answerNode;
    for(var i = 0; i < elements.length; i++)
    {
        elements[i].style.cursor = "pointer";
        ye.addListener(elements[i], "click", expandItem, elements[i]);
    }
    
    function expandItem(e, element)
    {
        if(expandedItem)
        {
            yd.removeClass(expandedItem.parentNode, "expanded");
            yd.removeClass(expandedItem.parentNode, "even-expanded");
            //expandedItem.parentNode.style.height = "18px";
            var resultHeight = yd.hasClass(expandedItem.parentNode, "double") ? 33 : 18;
            var collapseAnim = new YAHOO.util.Anim(expandedItem.parentNode, { height: {to: resultHeight}}, 0.3, YAHOO.util.Easing.easeOut);
            collapseAnim.animate();
        }
        
        if(expandedItem != element)
        {
            expandedItem = element;
            
            var answerNode = yd.getNextSibling(element);
            var height = answerNode.offsetHeight + element.offsetHeight + 8;
            
            var className = yd.hasClass(expandedItem.parentNode, "even") ? "expanded even-expanded" : "expanded";
            yd.addClass(expandedItem.parentNode, className);        
            
            
            var expandAnim = new YAHOO.util.Anim(element.parentNode, { height: {to: height}}, 0.3, YAHOO.util.Easing.easeOut);
            expandAnim.onComplete.subscribe(function() {
                expandedItem.parentNode.style.height = "auto";
            }); 
            expandAnim.animate();
        }
        else
        {
            expandedItem = null;
        }
        
        
    }
    
    var that = {
    
    }
    return that;
}();
