﻿/**
 * @author emmi
 */

$(function () {
    function changeSlide(newSlide, activate) {
        // change the currSlide value
        currSlide = newSlide;

        // make sure the currSlide value is not too low or high
        if (currSlide > maxSlide) currSlide = 0;
        else if (currSlide < 0) currSlide = maxSlide;

        // animate the slide reel
        $slideReel.animate({
            left: currSlide * -width
        }, 400, 'swing', function () {
            // set new timeout if active
            if (activate) slideTimeout = setTimeout(nextSlide, 8500);
        });

        // animate the navigation indicator
        $slideNav.find('.nav-item-dot-active').toggleClass('nav-item-dot-active');
        $($slideNav.find('.nav-item-dot')[currSlide]).toggleClass('nav-item-dot-active');

    }

    function nextSlide() {
        changeSlide(currSlide + 1, true);
    }

    // define some variables / DOM references
    var currSlide = 0,
    slideTimeout,
    $slideshow = $('#slideshow'),
    $slideReel = $slideshow.find('#slideshow-reel'),
  $slideNav = $('#slideshow-nav'),
    maxSlide = $slideReel.children().length - 1,
  width = $slideshow.width()

    // set width on entire slider
    $slideReel.width(width * $slideReel.children().length);

    // main navigation
    $slideshow.find('#slideshow-nav a.nav-item').click(function (ev) {
        ev.preventDefault();

        var $p = $(this).parent().children(),
    index = $p.index(this);

        currSlide = index;

        changeSlide(index, false);
    });

    // start the animation
    slideTimeout = setTimeout(nextSlide, 4000);
});
