﻿var timer,
    currentPosition = 0;
    
function showDescription(id) {
    $('.section .slide-description-wrap').find('.description')
                                         .hide()
                                         .end()
                                         .find('input[value=' + id + ']')
                                         .parent()
                                         .show();
}

function selectProjectButton(id) {
    $('.navigation .inner').find('a')
                           .removeClass('current')
                           .end()
                           .find('a[class=project-' + id + ']')
                           .addClass('current');
}

function moveSlider(direction) {
    var $items = $('.slider-home li'),
        projectId;

    direction = direction || 1;

    $items.eq(currentPosition).fadeOut(800);

    currentPosition = currentPosition + direction;
    if (currentPosition < 0) {
        currentPosition = $items.length - 1;
    }

    currentPosition %= $items.length;

    projectId = $items.eq(currentPosition)
                      .fadeIn(800)
                      .find('img')
                      .attr('class')
                      .substring(8);

    showDescription(projectId);
    selectProjectButton(projectId);
}

function initializeTimer() {
    clearInterval(timer);
    timer = setInterval(moveSlider, carouselTimer);
}

function openProject(id) {
    showDescription(id);

    currentPosition = $('.slider-home-wrap .slider-home li').hide()
                                                            .find('img[class=project-' + id + ']')
                                                            .parent()
                                                            .eq(0)
                                                            .show()
                                                            .index();
}

function initializeButtons() {
    $('span.nextBtn').live('click', function () {
        moveSlider();
        initializeTimer();
    });

    $('span.prevBtn').live('click', function () {
        moveSlider(-1);
        initializeTimer();
    });
}

function initiateCarousel() {
    openProject(startProjectId);
    initializeButtons();
    initializeTimer();
}

function fixImageWidth() {
    var widthFix = ($(window).width() - 1680) / 2;

    $('.slider-home-wrap ul li').css('left', widthFix + 'px');
}


$(document).ready(function () {
    $('.navigation .inner a').click(function () {
        $(this).siblings('a').removeClass('current').end().addClass('current');
    });

    $(window).resize(fixImageWidth);

    initiateCarousel();

    fixImageWidth();
});
