var slideShow = new Array()
slideShow[0] = "images/slideshow/1.jpg";
slideShow[1] = "images/slideshow/2.jpg";
slideShow[2] = "images/slideshow/3.jpg";
slideShow[3] = "images/slideshow/4.jpg";
slideShow[4] = "images/slideshow/5.jpg";
slideShow[5] = "images/slideshow/6.jpg";
slideShow[6] = "images/slideshow/7.jpg";
slideShow[7] = "images/slideshow/8.jpg";
slideShow[8] = "images/slideshow/9.jpg";
slideShow[9] = "images/slideshow/10.jpg";
slideShow[10] = "images/slideshow/11.jpg";
slideShow[11] = "images/slideshow/12.jpg";
slideShow[12] = "images/slideshow/13.jpg";
slideShow[13] = "images/slideshow/14.jpg";
slideShow[14] = "images/slideshow/15.jpg";
slideShow[15] = "images/slideshow/16.jpg";
slideShow[16] = "images/slideshow/17.jpg";
slideShow[17] = "images/slideshow/18.jpg";
slideShow[18] = "images/slideshow/19.jpg";
slideShow[19] = "images/slideshow/20.jpg";
slideShow[20] = "images/slideshow/21.jpg";

function fadeinSlideshow(elem, imageList, slideDuration, fadeSpeed, current) {
    // get the length of the image array.
    var listSize = imageList.length;
    // If there's no current image selected, or the value is out of the range of the
    // slideshow, then set the current image to zero.
    if (!current || current >= listSize) current = 0;
    // If there's no slide duration set, set it to 5 seconds.
    if (!slideDuration) slideDuration = 5000;
    // If there's no fade speed set, set it to 1 second.
    if (!fadeSpeed) fadeSpeed = 1000;
    // Set the image's source to the current image's url.
    $(elem + " img").attr("src", imageList[current]);
    // If the current element is at the maximum of the element size, then set the 
    // wrapper's background (aka, the next image) to the first image.
    if (current == (listSize - 1)) {
        $(elem).css("background", "transparent url(" + imageList[0] + ") no-repeat");
    } else {
    // If not, set the next image in the list to the background of the wrapper.
        $(elem).css("background", "transparent url(" + imageList[current + 1] + ") no-repeat");
    }
    // Hold the current image for a period of time equal to slideDuration. Once that's done, then
    // fade the current image's opacity until the background image shows. Once that is done, then
    // call this same function again with the next image in line.
    $(elem + " img").animate({ opacity: "1" }, slideDuration).animate({ opacity: "0.01" }, fadeSpeed, function() { $(this).css("opacity", "1"); fadeinSlideshow(elem, imageList, slideDuration, fadeSpeed, current + 1) });
} // end of function fadeinSlideshow()

function runSlideshow(){
    fadeinSlideshow("#slideshow", slideShow, 5000, 1000);
}

$(document).ready(runSlideshow);
