
function changeMainImage(newImage) {
   
    var gallery = $(newImage).parents('.border');
    var galleryId = gallery.attr('id');
    var selectedImage = $('#' + galleryId + ' .rightHandSlider li .selected').attr('class').replace(" selected", "");
    selectedImage = selectedImage.replace("image_", "");
    var numberOfImages = $('#' + galleryId + ' .rightHandSlider li').length;


    if ($(newImage).attr('class') == 'previous' || $(newImage).attr('class') == 'next') {
        if (!$('#' + galleryId + ' .rightHandSlider').is(":animated")) {
            if ($(newImage).attr('class') == 'previous') {

                if (selectedImage != 1) {
                    $('#' + galleryId + ' .rightHandSlider li img').removeClass("selected");
                    newImage = (selectedImage * 1) - 1;
                    newImageSRC = $('#' + galleryId + ' .image_' + newImage).attr('src');
                    newImageText = $('#' + galleryId + ' .image_' + newImage).attr('title');
                    newImageSRC = newImageSRC.replace('/Thumbs/', '/Blowup/');
                    newImageSRC = newImageSRC.replace('114x76', '778x518');
                    $('#' + galleryId + ' .mainImage img').attr('src', newImageSRC);
                    $('#' + galleryId + ' .image_' + newImage).addClass("selected");
                    $('#' + galleryId + ' .imageText').html(newImageText);
                    $('#' + galleryId + ' .counter').text('Image ' + newImage + ' of ' + numberOfImages);
                }

                $('#' + galleryId + ' .next').show();

                if ((selectedImage * 1) == 2) {
                    $('#' + galleryId + ' .previous').hide();
                }

                if (((selectedImage - 1) * 1) % 6 == 0) {
                    //need to move slider to prvi set of images             
                    slideGallery('previous', '6', $('#' + galleryId + ' .prevVertical'), false);
                }


            } else if ($(newImage).attr('class') == 'next') {
                if (selectedImage != numberOfImages) {
                    $('#' + galleryId + ' .rightHandSlider li img').removeClass("selected");
                    newImage = (selectedImage * 1) + 1;
                    newImageSRC = $('#' + galleryId + ' .image_' + newImage).attr('src');
                    newImageText = $('#' + galleryId + ' .image_' + newImage).attr('title');
                    newImageSRC = newImageSRC.replace('/Thumbs/', '/Blowup/');
                    newImageSRC = newImageSRC.replace('114x76', '778x518');
                    $('#' + galleryId + ' .mainImage img').attr('src', newImageSRC);
                    $('#' + galleryId + ' .image_' + newImage).addClass("selected");
                    $('#' + galleryId + ' .imageText').html(newImageText);
                    $('#' + galleryId + ' .counter').text('Image ' + newImage + ' of ' + numberOfImages);
                }
                $('#' + galleryId + ' .previous').show();
                if ((selectedImage * 1) + 1 == numberOfImages) {
                    $('#' + galleryId + ' .next').hide();
                }

                if ((selectedImage * 1) % 6 == 0) {
                    //need to move slider to next set of images
                    slideGallery('next', 6, $('#' + galleryId + ' .nextVertical'), false);
                }
            }
        }
    } else {
    
        $('#' + galleryId + ' .rightHandSlider li img').removeClass("selected");
        var newImageNumber = $(newImage).attr('class').replace("image_", "");
        $(newImage).addClass("selected");
        //$('#' + galleryId + ' .rightHandSlider li').attr('src', newImageSRC);

        newImageText = $(newImage).attr('title');
        var newImageSRC = $(newImage).attr('src');
        newImageSRC = newImageSRC.replace('/Thumbs/', '/Blowup/');
        newImageSRC = newImageSRC.replace('114x76', '778x518');
        $('#' + galleryId + ' .mainImage img').attr('src', newImageSRC);
        $('#' + galleryId + ' .imageText').html(newImageText);
        $('#' + galleryId + ' .counter').text('Image ' + newImageNumber + ' of ' + numberOfImages);

        if (newImageNumber > 1) {
            $('#' + galleryId + ' .previous').show();
        }
        else {
            $('#' + galleryId + ' .previous').hide();
        }

        if (newImageNumber < numberOfImages) {
            $('#' + galleryId + ' .next').show();
        }
        else {
            $('#' + galleryId + ' .next').hide();
        }
    }


}

function slideGallery(direction, amount, buttonClicked,autoChangeFirstImage) {
    
    var gallery = $(buttonClicked).parent('.border');
    var galleryId = gallery.attr('id');

    if (!$('#' + galleryId + ' .rightHandSlider').is(":animated")) {
        
        var numberOfImages = $('#' + galleryId + ' .rightHandSlider li').length;
        var selectedImage = $('#' + galleryId + ' .rightHandSlider li .selected').attr('class').replace(" selected", "");
        selectedImage = selectedImage.replace("image_", "");
        var currentPosition = $('#' + galleryId + ' .rightHandSlider').css('top').replace('px', '');
       
        if (galleryId == "lightBoxGallery") {

            if (parseInt(jQuery.browser.version) == 8 || parseInt(jQuery.browser.version)) {
                var positionInteger = 395;
            }
          
            else {
                var positionInteger = 387;
            }

            var maxPosition = numberOfImages * 62;
            
            
        } else {
            var maxPosition = numberOfImages * 50;
            var positionInteger = 250;
        }
        if (direction == "previous") {
            
            //make sure the next button is always showing after previous is clicked
            $('#' + galleryId + ' .nextButton').show();
            $('#' + galleryId + ' .nextVertical').show();
            
            if (amount == 6 && currentPosition != 0) {
                //alert(currentPosition - currentPosition + 514);
                $('#' + galleryId + ' .rightHandSlider').animate({
                top: (1 * currentPosition) + positionInteger
                }, 2000);
            }

            if (((currentPosition * -1) == positionInteger)) {
                $('#' + galleryId + ' .previousButton').hide();
                $('#' + galleryId + ' .prevVertical').hide();
            }
        } else if (direction == "next") {

        $('#' + galleryId + ' .prevVertical').show();
        $('#' + galleryId + ' .previousButton').show();         
            if (amount == 6 && maxPosition >= ((currentPosition * -1) + positionInteger)) {
                $('#' + galleryId + ' .rightHandSlider').animate({
                top: currentPosition - positionInteger
                }, 2000);
            }

            //hide next button when last set of images is shown
            if (((currentPosition * -1) - positionInteger) == 0) {
                $('#' + galleryId + ' .nextButton').hide();
                $('#' + galleryId + ' .nextVertical').hide();
            }
        }
                
       if (autoChangeFirstImage)
           getFirstImageIndex(numberOfImages, amount, selectedImage, direction, galleryId);
}

}

function getFirstImageIndex(numOfImages, numToShift, currentImageIndex, direction, galleryId) {
    var startIndex=0;
    var totalImageBlocks = numOfImages / numToShift;
    var firstImageIndex=0;
    var indexAfterShift = 0;

    currentImageIndex = currentImageIndex * 1;
    numToShift = numToShift * 1;

    if (numOfImages > 0 && numOfImages > numToShift) {
        totalImageBlocks = numOfImages / numToShift;

        if (direction == 'next') {
            if (currentImageIndex <= numToShift)
                firstImageIndex = numToShift
            else if (currentImageIndex % numToShift == 0)
                firstImageIndex = currentImageIndex
            else
                firstImageIndex = numToShift * (Math.floor((currentImageIndex + numToShift) / numToShift));
        }
        else {
            firstImageIndex = Math.floor(currentImageIndex - numToShift) <= numToShift ? 0 : (Math.floor((currentImageIndex - numToShift) / numToShift)) * numToShift;
        }
        changeMainImage($('#' + galleryId + ' .rightHandSlider li img').get(firstImageIndex));       
    }    
}
