﻿var TotalGalleryImages = 0;
var GalleryImageNum = 0;
var StoredGalleryID = -1;
var ImageFilenames = new Array();
var ImageDescriptions = new Array();
var CurrentGalleryPageNumber = 0;

function DisplayGalleryImage(ImageNum, GalleryID, Filename)
{
    StoredGalleryID = GalleryID;
    GalleryImageNum = ImageNum;
    
    // Change the main displayed image
    //document.getElementById("DisplayedImage").src = "ShowGalleryImage.aspx?GalleryID=" + GalleryID + "&Filename=" + Filename + "&Width=486";
    document.getElementById("DisplayedImage").src = "ShowGalleryImage.aspx?GalleryID=" + GalleryID + "&Filename=" + Filename + "&Height=324";


    // Provide a link for thickbox to pop-up a larger version of the main image
    //document.getElementById("GalleryThickboxImage").href = "ShowGalleryImage.aspx?width=850&GalleryID=" + GalleryID + "&Filename=" + Filename + "&Width=900";
    //document.getElementById("GalleryThickboxImage").href = "ShowGalleryFullSizeImage.aspx?width=810&height=800&GalleryID=" + GalleryID + "&Filename=" + Filename;
    document.getElementById("GalleryThickboxImage").href = "data/Galleries/" + GalleryID + "/" + Filename;
    
    ShowImageDescription(GalleryImageNum);
}

function NextGalleryImage()
{
    GalleryImageNum++;
    
    if (GalleryImageNum >= TotalGalleryImages)
    {
        GalleryImageNum = 0;
    }

    DisplayGalleryImage(GalleryImageNum, StoredGalleryID, ImageFilenames[GalleryImageNum]);
    //ShowImageDescription(GalleryImageNum);
}

function PrevGalleryImage()
{
    GalleryImageNum--;
    
    if (GalleryImageNum < 0)
    {
        GalleryImageNum = TotalGalleryImages - 1;
    }

    DisplayGalleryImage(GalleryImageNum, StoredGalleryID, ImageFilenames[GalleryImageNum]);
    //ShowImageDescription(GalleryImageNum);
}

function StoreImageFilename(ImageNum, Filename)
{
    ImageFilenames[ImageNum] = Filename;
}

function StoreImageDescription(ImageNum, Description)
{
    ImageDescriptions[ImageNum] = Description;
}

function ShowImageDescription(ImageNum)
{
    document.getElementById("ImageDescription").innerHTML = ImageDescriptions[ImageNum];
}

function NextGalleryPage()
{
    CurrentGalleryPageNumber++;

    // Only a maximum of 8 image thumbnails are shown at a time
    if (CurrentGalleryPageNumber * 8 > TotalGalleryImages)
    {
        //
        // CHANGED 2008.09.08 to not allow looping of the pages
        //
        //CurrentGalleryPageNumber = 0;
        CurrentGalleryPageNumber--;
        return; // no need to re-display the current gallery
    }

    DisplayGalleryPage();

}

function PrevGalleryPage()
{
    CurrentGalleryPageNumber--;

    // Only a maximum of 8 image thumbnails are shown at a time
    if (CurrentGalleryPageNumber < 0)
    {
        //
        // CHANGED 2008.09.08 to not allow looping of the pages
        //

        //var numPages = Math.round(TotalGalleryImages / 8);

        //CurrentGalleryPageNumber = numPages - 1;
        /*
        alert("numPages after round = " + numPages);

        if (TotalGalleryImages % 8 > 0)
        {
            numPages += 1;
        }


        CurrentGalleryPageNumber = numPages - 1;

        alert("numPages after subtraction = " + CurrentGalleryPageNumber);
        */

        CurrentGalleryPageNumber = 0;
        return; // no need to re-display the current gallery
    }

    DisplayGalleryPage();
}

function DisplayGalleryPage()
{
    var StartingImage = CurrentGalleryPageNumber * 8;
    var EndingImage = StartingImage + 7;

    if (EndingImage >= TotalGalleryImages)
    {
        EndingImage = TotalGalleryImages - 1;
    }

    // Hide all gallery images
    for (var n = 0; n < TotalGalleryImages; n++)
    {
        document.getElementById("Link" + n).style.display = "none";
    }
    
    // Display only the current page worth of images
    for (var i = StartingImage; i <= EndingImage; i++)
    {
        document.getElementById("Link" + i).style.display = "block";
    }
}
