(function(b) {
    b.fn.easySlider = function(a) {
        a = b.extend({ prevId: "prevBtn", prevText: "", nextId: "nextBtn", nextText: "", controlsShow: !0, controlsBefore: "", controlsAfter: "", controlsFade: !0, firstId: "firstBtn", firstText: "First", firstShow: !1, lastId: "lastBtn", lastText: "Last", lastShow: !1, vertical: !1, speed: 800, auto: !1, pause: 2E3, continuous: !1, numeric: !1, numericId: "controls" }, a); this.each(function() {
            function j(c) { c = parseInt(c) + 1; b("li", "#" + a.numericId).removeClass("current"); b("li#" + a.numericId + c).addClass("current") }
            function o() { c > h && (c = 0); c < 0 && (c = h); a.vertical ? b("ul", e).css("margin-left", c * l * -1) : b("ul", e).css("margin-left", c * i * -1); m = !0; a.numeric && j(c) } function f(d, g) {
                if (m) {
                    m = !1; var k = c; switch (d) { case "next": c = k >= h ? a.continuous ? c + 1 : h : c + 1; break; case "prev": c = c <= 0 ? a.continuous ? c - 1 : 0 : c - 1; break; case "first": c = 0; break; case "last": c = h; break; default: c = d } var k = Math.abs(k - c), j = k * a.speed; a.vertical ? (p = c * l * -1, b("ul", e).animate({ marginTop: p }, { queue: !1, duration: j, complete: o })) : (p = c * i * -1, b("ul", e).animate({ marginLeft: p }, { queue: !1,
                        duration: j, complete: o
                    })); !a.continuous && a.controlsFade && (c == h ? (b("a", "#" + a.nextId).hide(), b("a", "#" + a.lastId).hide()) : (b("a", "#" + a.nextId).show(), b("a", "#" + a.lastId).show()), c == 0 ? (b("a", "#" + a.prevId).hide(), b("a", "#" + a.firstId).hide()) : (b("a", "#" + a.prevId).show(), b("a", "#" + a.firstId).show())); g && clearTimeout(n); a.auto && d == "next" && !g && (n = setTimeout(function() { f("next", !1) }, k * a.speed + a.pause))
                } 
            } var e = b(this), g = b("li", e).length, i = b("li", e).width(), l = b("li", e).height(), m = !0; e.width(i); e.height(l); e.css("overflow",
"hidden"); var h = g - 1, c = 0; b("ul", e).css("width", g * i); a.continuous && (b("ul", e).prepend(b("ul li:last-child", e).clone().css("margin-left", "-" + i + "px")), b("ul", e).append(b("ul li:nth-child(2)", e).clone()), b("ul", e).css("width", (g + 1) * i)); a.vertical || b("li", e).css("float", "left"); if (a.controlsShow) {
                var d = a.controlsBefore; a.numeric ? (d += '<ol id="' + a.numericId + '"></ol>', d += ' <span id="' + a.prevId + '"><a href="javascript:void(0);">' + a.prevText + "</a></span>", d += ' <span id="' + a.nextId + '"><a href="javascript:void(0);">' +
a.nextText + "</a></span>") : (a.firstShow && (d += '<span id="' + a.firstId + '"><a href="javascript:void(0);">' + a.firstText + "</a></span>"), d += ' <span id="' + a.prevId + '"><a href="javascript:void(0);">' + a.prevText + "</a></span>", d += ' <span id="' + a.nextId + '"><a href="javascript:void(0);">' + a.nextText + "</a></span>", a.lastShow && (d += ' <span id="' + a.lastId + '"><a href="javascript:void(0);">' + a.lastText + "</a></span>")); d += a.controlsAfter; b(e).after(d)
            } if (a.numeric) {
                for (d = 0; d < g; d++) b(document.createElement("li")).attr("id",
a.numericId + (d + 1)).html("<a rel=" + d + ' href="javascript:void(0);">' + (d + 1) + "</a>").appendTo(b("#" + a.numericId)).click(function() { f(b("a", b(this)).attr("rel"), !0) }); b("a", "#" + a.nextId).click(function() { f("next", !0) }); b("a", "#" + a.prevId).click(function() { f("prev", !0) }); b("a", "#" + a.firstId).click(function() { f("first", !0) }); b("a", "#" + a.lastId).click(function() { f("last", !0) })
            } var n; a.auto && (n = setTimeout(function() { f("next", !1) }, a.pause)); a.numeric && j(0); !a.continuous && a.controlsFade && (b("a", "#" + a.prevId).hide(),
b("a", "#" + a.firstId).hide())
        })
    } 
})(jQuery);
