﻿(function ($) {
    $.fn.tabify = function (options) {

        defaults = {
            divClass: "infoTabs",
            ulClass: "tabs",
            contentClass: "tabbed-content",
            firstTab: 0,
            search: "",
            message: ""
        };
        var options = $.extend(defaults, options);

        $(this).find("li:eq(0) a").css("border-left", "none");

        $(this).find("li a").click(function () {
            var clickedTab = $(this);
            var thisTab = $("." + options.divClass + " ." + options.ulClass + " li a").index(clickedTab);
            $("." + options.divClass + " ." + options.ulClass + " li a").removeClass("active");
            $("." + options.divClass + " ." + options.ulClass + " li a:eq(" + thisTab + ")").addClass("active");
            $("." + options.divClass + " ." + options.ulClass + " li").removeClass("selected");
            $("." + options.divClass + " ." + options.ulClass + " li:eq(" + thisTab + ")").addClass("selected");
            $("." + options.divClass + " ." + options.contentClass).hide();
            $("." + options.divClass + " ." + options.contentClass + ":eq(" + thisTab + ")").show();
            if ($(this).attr("href").indexOf("javascript:") == 0) {
                return true;
            }
            else if ($(this).attr("href").match("iframe")) {
                var dest = $(this).attr("href");
                dest = dest.replace("&dest=", "&dest=" + escape(self.location));
                dest = dest.replace("%3fdest%3d", "%3fdest%3d" + escape(self.location));
                $("." + options.divClass + " ." + options.contentClass + ":eq(" + thisTab + ")").empty();
                if (options.message != '') {
                    $("." + options.divClass + " ." + options.contentClass + ":eq(" + thisTab + ")").append('<div id="infoTabMessage" class="infoTabMessage"><p>' + options.message + '</p></div>');
                }
                $("." + options.divClass + " ." + options.contentClass + ":eq(" + thisTab + ")").append('<iframe src="' + dest + '" frameborder="0"></iframe>');
            }
            return false;
        });

        //basic search so we can start on the tab with the content we searched for.
        if (options.search != "") {
            var divs = $("." + options.divClass + " ." + options.contentClass);
            divs.each(function () {
                if ($(this).text().toLowerCase().indexOf(options.search.toLowerCase()) > -1) {
                    $("." + options.divClass + " ." + options.contentClass).hide();
                    options.firstTab = divs.index($(this));
                }
            });

        }

        $(this).find("li:eq(" + options.firstTab + ") a").click();
        //        $("." + options.divClass + " ." + options.ulClass + " li a:eq(" + options.firstTab + ")").addClass("active");
        //        $("." + options.divClass + " ." + options.ulClass + " li:eq(" + options.firstTab + ")").addClass("selected");
        //        $("." + options.divClass + " ." + options.contentClass + ":eq(" + options.firstTab + ")").show();
        //        
    };

    //   $.fn.tabify.

})(jQuery);