var insymaFAQsyslogic = {
    props:{
		ListenClass: "faq_liste",
        LinkClass: "thema",
        QuestionClass: "fragen_liste",
		QuestionLinkClass: "frage",
		AnswerClass: "antwort",
        hideClass: "hide",
        activeClass: "faq_active"
    },
    init:function() {	
		var getAnchor = self.document.location.hash.substring(1);
        var toggleLinks = insymaUtil.elmByClass("h3", insymaFAQsyslogic.props.LinkClass);
        for(var i = 0; i<toggleLinks.length; i++) {
            var temp = insymaUtil.closestSib(toggleLinks[i], 1);			
            while(!insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.QuestionClass)) {
               temp = insymaUtil.closestSib(temp, 1);
            };
            if(insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.QuestionClass)){insymaUtil.cssjs("add", temp, insymaFAQsyslogic.props.hideClass);}
            toggleLinks[i].onclick = function() {
                var temp = insymaUtil.closestSib(this, 1);
                while(!insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.QuestionClass)) {
                   temp = insymaUtil.closestSib(temp, 1);
                };
                if(insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.QuestionClass)) {
                    if (insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.hideClass)) {
                        var activeLinks = insymaUtil.elmByClass("h3", insymaFAQsyslogic.props.activeClass);
						for(var i = 0; i<activeLinks.length; i++) {	
							var temps = insymaUtil.closestSib(activeLinks[i], 1);			
							while(!insymaUtil.cssjs("check", temps, insymaFAQsyslogic.props.QuestionClass)) {
							   temps = insymaUtil.closestSib(temps, 1);
							};
							if(insymaUtil.cssjs("check", activeLinks[i], insymaFAQsyslogic.props.activeClass)){
								insymaUtil.cssjs("add", temps, insymaFAQsyslogic.props.hideClass);
								insymaUtil.cssjs("remove", activeLinks[i], insymaFAQsyslogic.props.activeClass);
							}
						 }
						insymaUtil.cssjs("remove", temp, insymaFAQsyslogic.props.hideClass);
                        insymaUtil.cssjs("add", this, insymaFAQsyslogic.props.activeClass);
                    } else {
                        insymaUtil.cssjs("add", temp, insymaFAQsyslogic.props.hideClass);
                        insymaUtil.cssjs("remove", this, insymaFAQsyslogic.props.activeClass);
                    }
					var listen = insymaUtil.elmByClass("ul", insymaFAQsyslogic.props.ListenClass);
					listen[0].style.height = temp.offsetHeight + "px";
                }
                return false;
            };		
        }
		var toggleQuestions = insymaUtil.elmByClass("a", insymaFAQsyslogic.props.QuestionLinkClass);
        for(var i = 0; i<toggleQuestions.length; i++) {
			var temp = insymaUtil.closestSib(toggleQuestions[i], 1);			
            while(!insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.AnswerClass)) {
               temp = insymaUtil.closestSib(temp, 1);
            };
            if(insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.AnswerClass)){insymaUtil.cssjs("add", temp, insymaFAQsyslogic.props.hideClass);}
            toggleQuestions[i].onclick = function() {
                var temp = insymaUtil.closestSib(this, 1);				
                while(!insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.AnswerClass)) {
                   temp = insymaUtil.closestSib(temp, 1);
                };
                if(insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.AnswerClass)) {
                    if (insymaUtil.cssjs("check", temp, insymaFAQsyslogic.props.hideClass)) {
                        var activeQuestionLinks = insymaUtil.elmByClass("a", insymaFAQsyslogic.props.activeClass);
						for(var i = 0; i<activeQuestionLinks.length; i++) {	
							var temps = insymaUtil.closestSib(activeQuestionLinks[i], 1);
							while(!insymaUtil.cssjs("check", temps, insymaFAQsyslogic.props.AnswerClass)) {
							   temps = insymaUtil.closestSib(temps, 1);
							};
							if(insymaUtil.cssjs("check", activeQuestionLinks[i], insymaFAQsyslogic.props.activeClass)){
								insymaUtil.cssjs("add", temps, insymaFAQsyslogic.props.hideClass);
								insymaUtil.cssjs("remove", activeQuestionLinks[i], insymaFAQsyslogic.props.activeClass);
							}
						 }
						insymaUtil.cssjs("remove", temp, insymaFAQsyslogic.props.hideClass);
                        insymaUtil.cssjs("add", this, insymaFAQsyslogic.props.activeClass);
                    } else {
                        insymaUtil.cssjs("add", temp, insymaFAQsyslogic.props.hideClass);
                        insymaUtil.cssjs("remove", this, insymaFAQsyslogic.props.activeClass);
                    }
					var listen = insymaUtil.elmByClass("ul", insymaFAQsyslogic.props.ListenClass);
					listen[0].style.height = temp.offsetHeight + "px";
                }
                return false;
            };
		}
    }
};
insymaUtil.addEvent(window, "load", insymaFAQsyslogic.init, false);

