﻿if ($.fn.editable) {
    $.fn.editable.updateDOM = function(target, content) {
        target.html(content);
        if (target.parent().is('.faqs')) {
            $('.faqs').faqs();
        }
    };
}

$.fn.faqs = function() {
    this.each(function() {
        var children = (cms.adminId ? $('> div > *', $(this)) : $('> *', $(this)));
        var answer = null;
        var question = null;
        var items = [];
        for (var i = 0; i < children.length; i++) {
            var el = $(children[i]);
            if (el.is('h3')) {
                answer = [];
                items.push({ question: el, answer: answer });
            } else if (el.is('h2')) {
                continue;
            } else {
                if (answer == null) return;
                answer.push(el);
            }
        }
        for (var i = 0; i < items.length; i++) {
            items[i].question.wrapInner('<a href="#" class="question"/>');
            var answerDiv = $('<div class="answer"/>');
            answerDiv.insertAfter(items[i].question);
            $.each(items[i].answer, function() { answerDiv.append(this); });
            answerDiv.toggle();
        }
        $('.question', $(this)).click(function() {
            var answer = $(this).parent().next('.answer');
            if (answer.is(':visible')) {
                if ($.browser.msie) {
                    answer.hide();
                } else {
                    answer.slideUp();
                }
            } else {
                answer.slideDown();
            }
            $(this).parent().toggleClass('open');
            return false;
        });
    });
    return this;
};

$(function() {
    $('.faqs').faqs();
});