$(document).ready(function(){
    $(".dictionary .navi a").bindSet()

    $(".dictionary .set p").hide();
    $(".dictionary .set dfn").addClass('colapse');
    $(".dictionary .set").hide();

    $(".dictionary [href=#A]").toggleClass("active");
    $(".dictionary #A.set").toggleClass("expanded").show();

    $(".dictionary .set dfn").click(function(){
        var cl = $(this).attr('class');

        $(".dictionary .set dfn").each(function(){
            if($(this).attr('class') == 'expand') {
                $(this).toggleClass("colapse").toggleClass("expand").next().slideToggle("slow");
            }
        });

        if(cl != 'expand') {
            $(this).toggleClass("colapse").toggleClass("expand").next().slideDown("slow");
        }
    });
});


jQuery.fn.bindSet = function(settings) {
    settings = jQuery.extend({
        speed : 'fast'
    }, settings);

    return this.each(function(){
        var caller = this

        $(caller).click(function (event) {
            event.preventDefault()
            var elementClick = $(caller).attr("href");

            //alert(elementClick.replace(/#/, ''));

            $(".dictionary .navi a").removeClass('active');
            $(caller).toggleClass("active");

            $(".dictionary .set.expanded").slideUp(settings.speed);
            $(".dictionary .set").removeClass('expanded');
            $(".dictionary .set p").hide();
            $(".dictionary #"+elementClick.replace(/#/, '')+".set").toggleClass("expanded").slideToggle(settings.speed);

            return false;
        })
    })
}

