var sliderSpeed = 500;
var sliderPeriod = 6000;
var sliderTimer;

(function($) {

    $(document).ready(
        function() {

            $("div.slider").each(
                function() {
                    var curSlider = $(this);

                    curSlider.find("ul").css("width", (curSlider.find("li").eq(0).width()) + "px");
                    curSlider.find("li").css({"position":"absolute", "left":0, "top":0, "display":"none"});
                    curSlider.find("li:first").css({"display":"block"});
                    curSlider.data("curIndex", 0);

                    setTimeout(updateTime, 1000);
                    curSlider.data("disableAnimation", true)
                    sliderTimer = window.setTimeout(function() { $("a.slider-next").trigger("click"); }, sliderPeriod);
                }
            );

            $("a.slider-prev").click(
                function() {
                    var curSlider = $("div.slider");
                    if (curSlider.data("disableAnimation")) {
                        window.clearTimeout(sliderTimer);
                        sliderTimer = null;

                        if (curSlider.find("li").length > 1) {
                            var curIndex = Number(curSlider.data("curIndex"));

                            var newIndex = curIndex - 1;

                            if (newIndex < 0) {
                                newIndex = curSlider.find("li").length - 1;
                            }
                            curSlider.data("curIndex", newIndex);

                            curSlider.data("disableAnimation", false);
                            curSlider.find("li").eq(newIndex).css({"display":"block", "left":"-" + curSlider.find("li").eq(0).width() + "px"});
                            curSlider.find("ul").animate({left: curSlider.find("li").eq(0).width() + "px"}, sliderSpeed,
                                function() {
                                    curSlider.find("li").eq(curIndex).css({"display":"none"});
                                    curSlider.find("li").eq(newIndex).css({"left":0});
                                    curSlider.find("ul").css({"left":0});
                                    curSlider.data("disableAnimation", true);
                                    sliderTimer = window.setTimeout(function() { $("a.slider-next").trigger("click"); }, sliderPeriod);
                                }
                            );
                        }
                    }

                    return false;
                }
            );

            $("a.slider-next").click(
                function() {
                    var curSlider = $("div.slider");
                    if (curSlider.data("disableAnimation")) {
                        window.clearTimeout(sliderTimer);
                        sliderTimer = null;

                        if (curSlider.find("li").length > 1) {
                            var curIndex = Number(curSlider.data("curIndex"));

                            var newIndex = curIndex + 1;

                            if (newIndex == curSlider.find("li").length) {
                                newIndex = 0;
                            }
                            curSlider.data("curIndex", newIndex);

                            curSlider.data("disableAnimation", false);
                            curSlider.find("li").eq(newIndex).css({"display":"block", "left":curSlider.find("li").eq(0).width() + "px"});
                            curSlider.find("ul").animate({left: "-" + curSlider.find("li").eq(0).width() + "px"}, sliderSpeed,
                                function() {
                                    curSlider.find("li").eq(curIndex).css({"display":"none"});
                                    curSlider.find("li").eq(newIndex).css({"left":0});
                                    curSlider.find("ul").css({"left":0});
                                    curSlider.data("disableAnimation", true);
                                    sliderTimer = window.setTimeout(function() { $("a.slider-next").trigger("click"); }, sliderPeriod);
                                }
                            );
                        }
                    }

                    return false;
                }
            );

            $("div.block-4-submit a").click(
                function() {
                    $(this).parent().find("input").click();
                    return false;
                }
            );

            if ($.browser.msie && ($.browser.version == "6.0")) {
                $("div.menu-inner> ul > li").hover(
                    function() {
                        $(this).find("ul").show();
                    },

                    function() {
                        $(this).find("ul").hide();
                    }
                );
            }

            $("a.action-link").fancybox();

        }
    );

    function updateTime() {

        $("div.slider-content li").each(
            function() {
                var curAction = $(this);

                var curDaysValue    = Number(curAction.find("div.timer-days").html());
                var curHoursValue   = Number(curAction.find("div.timer-hours").html());
                var curMinutesValue = Number(curAction.find("div.timer-minutes").html());
                var curSecondsValue = Number(curAction.find("div.timer-seconds").html());

                curSecondsValue--;
                if (curSecondsValue < 0) {
                    curSecondsValue = 59;

                    curMinutesValue--;
                    if (curMinutesValue < 0) {
                        curMinutesValue = 59;

                        curHoursValue--;
                        if (curHoursValue < 0) {
                            curHoursValue = 23;

                            curDaysValue--;
                            if (curDaysValue < 0) {
                                curDaysValue    = 0;
                                curHoursValue   = 0;
                                curMinutesValue = 0;
                                curSecondsValue = 0;
                            }
                        }
                    }
                }
                curAction.find("div.timer-days").html(curDaysValue);
                curAction.find("div.timer-hours").html(curHoursValue);
                curAction.find("div.timer-minutes").html(curMinutesValue);
                curAction.find("div.timer-seconds").html(curSecondsValue);

            }
        );

        setTimeout(updateTime, 1000);

    }

})(jQuery);
