﻿var tools = {
    popup: function (This, defaultOpt) {
        var opt = $.extend({
            bodyBlockClass: 'PopupReady',
            container: '#PopupContainer',
            close: '.Close'
        }, defaultOpt);

        $.each($(This), function (i, tool) {
            var popupId = $(tool).attr('href');

            $(this).click(function (e) {
                /*$(opt.container).hide();
                var actualPopup = $(opt.container).find('.PopupWindow');
                actualPopup.hide();
                actualPopup.appendTo('body');*/

                e.preventDefault();
                $(popupId).appendTo(opt.container);
                $(popupId).show();
                $(opt.container).show();
                $('body').addClass(opt.bodyBlockClass);
            });

            $(opt.container).click(function (e) {
                e.preventDefault();
                ClosePopup();
            });
            $(popupId).click(function (e) {
                e.stopPropagation();
            });
            $(popupId).find(opt.close).click(function (e) {
                e.preventDefault();
                ClosePopup();
            });

            function ClosePopup() {
                $(popupId).appendTo('body');
                $(popupId).hide();

                if ($.trim($(opt.container).text()) == "") {
                    $(opt.container).hide();
                    $('body').removeClass(opt.bodyBlockClass);
                }

                if (popupId == '#BuzonDeTransparencia') {
                    $(popupId).find('form').show();
                }
                $('.SuccessMessage').hide();
            }
        });
    },
    tabs: function (This, defaultOpt) {
        var opt = $.extend({
            tab: '.Tab',
            content: '.Content',
            initialTab: ''
        }, defaultOpt);

        var tool = $(This);
        var nullTab = true;
        var indexActive = 0;
        var actualTab = $(opt.tab).eq(0).attr('href');

        if ((window.location.hash).length != 0) {
            opt.initialTab = window.location.hash;
        } else {
            opt.initialTab = actualTab;
            //window.location.hash = opt.initialTab
        }

        for (var i = 0; i < $(opt.tab).length; i++) {
            if ($(opt.tab).eq(i).attr('href') == opt.initialTab) {
                indexActive = i;
            }
        }

        ChangeTab(indexActive);

        $.each(tool.find(opt.tab), function (i, tab) {
            var nextHash = $(tab).attr('href');
            tab.index = i;
            $(tab).click(function () {
                if (nextHash != opt.initialTab) {
                    ChangeTab(tab.index);
                }
            });
        });

        function ChangeTab(index) {
            for (var i = 0; i < $(opt.tab).length; i++) {
                if (index == i) {
                    $(opt.tab).eq(i).addClass('Active');
                } else {
                    $(opt.tab).eq(i).removeClass('Active');
                }
            }
            $($(opt.tab).eq(indexActive).attr('href')).fadeOut(300, function () {
                $($(opt.tab).eq(index).attr('href')).fadeIn(300);
                opt.initialTab = $(opt.tab).eq(index).attr('href');
                indexActive = index;
            });
        }
    },
    accordion: function (This, defaultOpt) {
        var opt = $.extend({
            item: '.Item',
            title: 'h1',
            content: 'ul',
            timeAnimation: 300
        }, defaultOpt);

        $(This).toggle(function () {
            $(this).find(opt.title).addClass('Active');
            $(this).find(opt.content).slideDown(opt.timeAnimation);
        }, function () {
            $(this).find(opt.title).removeClass('Active');
            $(this).find(opt.content).slideUp(opt.timeAnimation);
        });
    },
    accordions: function (This, defaultOpt) {
        var opt = $.extend({
            items: '.Items',
            title: 'h1',
            content: 'ul',
            timeAnimation: 300
        }, defaultOpt);

        var tool = $(This);

        tool.find(opt.title).live('click', function () {
            var index = tool.find(opt.title).index(this);
            if (tool.find(opt.content).eq(index).css('display') == "none") {
                tool.find(opt.title).eq(index).addClass('Active');
                tool.find(opt.content).eq(index).slideDown(opt.timeAnimation);
            } else {
                tool.find(opt.title).eq(index).removeClass('Active');
                tool.find(opt.content).eq(index).slideUp(opt.timeAnimation);
            }
        });
    }
};
