var cCarousel = { nCurrentlySelected: 0, nPreviouslySelected: 0, timeInterval: 5500, timer: "", parentElem: "#carousel", length: 0, bAnimate: true, bAnimationProgress: false, eElement: "", init: function () { cCarousel.eElement = jQuery(cCarousel.parentElem); if (jQuery.client.os == "iPad") { cCarousel.eElement.find("div.ccontent").find(".links-container").find(".links").find("a").css("font-size", "1.73em"); cCarousel.eElement.find("div.ccontent").find(".links-container").find(".links").find(".small").find("a").css("font-size", "1.3em") } cCarousel.length = cCarousel.eElement.find("div.ccontent").length; cCarousel.eElement.find("div.ccontent").hide(); cCarousel.eElement.find("div.ccontent").eq(cCarousel.nCurrentlySelected).show(); if (cCarousel.nCurrentlySelected == 0) { cCarousel.nPreviouslySelected = cCarousel.length - 1 } else { cCarousel.eElement.find("div.controls").find("li.indicator").find("a").removeClass("selected"); cCarousel.eElement.find("div.controls").find("li.indicator").find("a").eq(cCarousel.nCurrentlySelected).addClass("selected") } cCarousel.eElement.find(".ccontent").hover(function () { cCarousel.pauseAnimation() }, function () { if (cCarousel.bAnimate) { cCarousel.pauseAnimation(); cCarousel.timer = setInterval(cCarousel.advanceStep, cCarousel.timeInterval) } }); cCarousel.eElement.find("div.controls").find("a.pause").click(function () { cCarousel.pauseAnimation(); cCarousel.showPlayControls(); cCarousel.bAnimate = false; return false }); cCarousel.eElement.find("div.controls").find("a.play").click(function () { cCarousel.pauseAnimation(); cCarousel.timer = setInterval(cCarousel.advanceStep, cCarousel.timeInterval); cCarousel.showPauseControls(); cCarousel.bAnimate = true; return false }); cCarousel.eElement.find("div.controls").find("a.next").click(function () { if (!cCarousel.bAnimationProgress) { cCarousel.bAnimationProgress = true; cCarousel.pauseAnimation(); cCarousel.nextAnimation(); cCarousel.bAnimate = false; cCarousel.showPlayControls() } return false }); cCarousel.eElement.find("div.controls").find("a.previous").click(function () { if (!cCarousel.bAnimationProgress) { cCarousel.bAnimationProgress = true; cCarousel.pauseAnimation(); cCarousel.prevAnimation(); cCarousel.bAnimate = false; cCarousel.showPlayControls() } return false }); cCarousel.eElement.find("div.controls").find("li.indicator").find("a").each(function (a) { jQuery(this).click(function () { if (!cCarousel.bAnimationProgress) { cCarousel.bAnimationProgress = true; cCarousel.pauseAnimation(); cCarousel.showPlayControls(); cCarousel.bAnimate = false; if (a != cCarousel.nCurrentlySelected) { cCarousel.nPreviouslySelected = cCarousel.nCurrentlySelected; cCarousel.nCurrentlySelected = a; cCarousel.startAnimation() } } return false }) }); cCarousel.pauseAnimation(); cCarousel.timer = setInterval(cCarousel.advanceStep, cCarousel.timeInterval) }, advanceStep: function () { clearInterval(cCarousel.timer); cCarousel.nextAnimation(); cCarousel.timer = setInterval(cCarousel.advanceStep, cCarousel.timeInterval) }, nextAnimation: function () { cCarousel.nPreviouslySelected = cCarousel.nCurrentlySelected; cCarousel.nCurrentlySelected++; if (cCarousel.nCurrentlySelected == cCarousel.length) { cCarousel.nCurrentlySelected = 0 } cCarousel.startAnimation() }, prevAnimation: function () { cCarousel.nPreviouslySelected = cCarousel.nCurrentlySelected; cCarousel.nCurrentlySelected--; if (cCarousel.nCurrentlySelected < 0) { cCarousel.nCurrentlySelected = cCarousel.length - 1 } cCarousel.startAnimation() }, startAnimation: function () { cCarousel.eElement.find("div.ccontent").eq(cCarousel.nPreviouslySelected).css("opacity", "1"); cCarousel.eElement.find("div.ccontent").eq(cCarousel.nPreviouslySelected).stop().animate({ opacity: 0 }, 375, function () { cCarousel.eElement.find("div.ccontent:not(:eq(" + cCarousel.nCurrentlySelected + "))").hide(); cCarousel.eElement.find("div.ccontent").eq(cCarousel.nCurrentlySelected).css("opacity", "0.25").show(); cCarousel.eElement.find("div.ccontent").eq(cCarousel.nCurrentlySelected).stop().animate({ opacity: 1 }, 375, function () { cCarousel.eElement.find("div.controls").find("li.indicator").find("a").removeClass("selected"); cCarousel.eElement.find("div.controls").find("li.indicator").find("a").eq(cCarousel.nCurrentlySelected).addClass("selected"); cCarousel.bAnimationProgress = false }) }) }, pauseAnimation: function () { clearInterval(cCarousel.timer) }, showPauseControls: function () { cCarousel.eElement.find("div.controls").find("a.play").hide(); cCarousel.eElement.find("div.controls").find("a.pause").show() }, showPlayControls: function () { cCarousel.eElement.find("div.controls").find("a.play").show(); cCarousel.eElement.find("div.controls").find("a.pause").hide() } };
