
var checkPage = function() {
    jQuery('.pageDot').removeClass('active');
    jQuery('#pageDot' + curPage).addClass('active');
    var prevPage = jQuery('.availableVAlbums .prevPage');
    var nextPage = jQuery('.availableVAlbums .nextPage');
    if (curPage == 0) {
        prevPage.addClass('disabled');
    }
    else {
        prevPage.removeClass('disabled');
    }

    if (curPage >= maxPage) {
        nextPage.addClass('disabled');
    }
    else {
        nextPage.removeClass('disabled');
    }
    
    if (curPage == 0 && curPage >= maxPage)
    {
        prevPage.hide();
        nextPage.hide();
        jQuery('.pageDot').hide();
    }
    
}

var numAlbums = jQuery('body .availableVAlbums .list').find('.vAlbumItem').length;
var isFull = numAlbums >= vAlbumsPerPage;
var itemSpacing = 0;
if (!isFull)
{
    itemSpacing = Math.ceil(jQuery('body .availableVAlbums .list').width() / (numAlbums + 1));
}

var items = jQuery('body .availableVAlbums .list .vAlbumItem');
if (items.length > 1) {
    items.each(function(){
        jQuery(this).css('left', offset + itemSpacing / 2);
        offset += (isFull ? jQuery(this).width() : itemSpacing);
    });
}

offset = 0;

jQuery('body .availableVAlbums .pageDots .pageDot').each(function() {
    jQuery(this).css('left', offset);
    offset += jQuery(this).width() + 6;
});

jQuery('body .availableVAlbums .pageDots').width((maxPage + 1) * 14);

jQuery('body .availableVAlbums .pageDots').find('.pageDot').click(function() {
    var newPage = parseInt(jQuery(this).attr('data'));
    var difference = Math.abs(newPage - curPage);

    if (newPage > curPage)
    {
        jQuery('body .availableVAlbums .list .vAlbumItem').each(function() {
            jQuery(this).animate({
                'left': '-=' + jQuery(this).width() * vAlbumsPerPage * difference + 'px'
            });
        });
    }
    else if (newPage < curPage) {
        jQuery('body .availableVAlbums .list .vAlbumItem').each(function() {
            jQuery(this).animate({
                'left': '+=' + jQuery(this).width() * vAlbumsPerPage * difference + 'px'
            });
        });
    }


    curPage = newPage;
    checkPage();
});

jQuery('body .availableVAlbums .nextPage').click(function() {
    if (curPage < maxPage) {
        jQuery('body .availableVAlbums .list .vAlbumItem').each(function() {
            jQuery(this).animate({
                'left': '-=' + jQuery(this).width() * vAlbumsPerPage + 'px'
            });
        });
        curPage++;
        checkPage();
    }
});

jQuery('body .availableVAlbums .prevPage').click(function() {
    if (curPage > 0) {
        jQuery('body .availableVAlbums .list .vAlbumItem').each(function(){
            jQuery(this).animate({
                'left': '+=' + jQuery(this).width() * vAlbumsPerPage + 'px'
            });
        });
        curPage--;
        checkPage();
    }
});

checkPage();

