﻿var myslideshowimages;
var myslideshowdescriptions;
var myslideshowindex = 0;
var numberofimages = 0;
var folderpath = "";
var pausedSlideshow = false;


function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function blendimage(divid, imageid, imagefile, millisec, thePlacerID, nextDescription) {


    var speed = Math.round(millisec / 10);
    var timer = 0;

    //set the current image as background
    document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";

    //make image transparent
    changeOpac(0, imageid);

    //make new image
    document.getElementById(imageid).src = folderpath + imagefile;
    document.getElementById(imageid).alt = nextDescription;
    document.getElementById(thePlacerID).innerHTML = nextDescription;
    // document.getElementById(imageid).height = theHeight;
    // document.getElementById(imageid).width = theWidth;

    //fade in image
    for (i = 0; i <= 100; i++) {
        setTimeout("changeOpac(" + i + ",'" + imageid + "')", (timer * speed));
        timer++;
        pausedSlideshow = true;
    }

    pausedSlideshow = false;
}
function doNothing() {

}

var slideCache = new Array();
function RunSlideShow(divid, imageid, imageFiles, displaySecs, descriptionFiles, thePlacerID) {
    var whileCounter = 0
    while (pausedSlideshow == true) {
        setTimeout("doNothing()", 500);
        //whileCounter = whileCounter + 1;
    }
    var imageSeparator = imageFiles.indexOf(";");
    var descriptionSeparator = descriptionFiles.indexOf(";");
    var nextImage = imageFiles.substring(0, imageSeparator);
    var nextDescription = descriptionFiles.substring(0, descriptionSeparator);

    changeOpac(0, imageid);
    blendimage(divid, imageid, nextImage, 100, thePlacerID, nextDescription);

    var futureImages = imageFiles.substring(imageSeparator + 1, imageFiles.length) + ';' + nextImage;
    var futureDescriptions = descriptionFiles.substring(descriptionSeparator + 1, descriptionFiles.length) + ';' + nextDescription;
    setTimeout("RunSlideShow('" + divid + "','" + imageid + "','" + futureImages + "'," + displaySecs + ",'" + futureDescriptions + "','" + thePlacerID + "')", displaySecs * 1000);

    // Cache the next image to improve performance.
    imageSeparator = futureImages.indexOf(";");
    //descriptionSeparator = futureDescriptions.indexOf(";");
    nextImage = futureImages.substring(0, imageSeparator);
    if (slideCache[nextImage] == null) {
        slideCache[nextImage] = new Image;
        slideCache[nextImage].src = folderpath + nextImage;
    }

}


function startupvariables(numberofimagespi, slideshowimagesstr, slideshowdescriptionsstr, folderpathpi) {
    myslideshowimages = slideshowimagesstr.split(";");
    myslideshowdescriptions = slideshowdescriptionsstr.split(";");
    numberofimages = numberofimagespi
    folderpath = folderpathpi;
}

function timedSlide() {
    if (myslideshowindex < numberofimages - 1) {
        myslideshowindex = myslideshowindex + 1;
        document.getElementById("mySlidePlacer").src = folderpath + myslideshowimages[myslideshowindex];
        document.getElementById("mySlidePlacer").alt = myslideshowdescriptions[myslideshowindex]
        document.getElementById("myDescriptionPlacer").innerHTML = myslideshowdescriptions[myslideshowindex];
        return false;
    }
    else {
        myslideshowindex = 0;
        document.getElementById("mySlidePlacer").src = folderpath + myslideshowimages[myslideshowindex];
        document.getElementById("mySlidePlacer").alt = myslideshowdescriptions[myslideshowindex];
        document.getElementById("myDescriptionPlacer").innerHTML = myslideshowdescriptions[myslideshowindex];
        return false;
    }

}



function moveNextSlide() {
    if (myslideshowindex < numberofimages - 1) {
        myslideshowindex = myslideshowindex + 1;
        document.getElementById("mySlidePlacer").src = folderpath + myslideshowimages[myslideshowindex];
        document.getElementById("mySlidePlacer").alt = myslideshowdescriptions[myslideshowindex];
        document.getElementById("myDescriptionPlacer").innerHTML = myslideshowdescriptions[myslideshowindex];
        return false;
    }

}

function movePrevSlide() {
    if (myslideshowindex > 0) {
        myslideshowindex = myslideshowindex - 1;
        document.getElementById("mySlidePlacer").src = folderpath + myslideshowimages[myslideshowindex];
        document.getElementById("mySlidePlacer").alt = myslideshowdescriptions[myslideshowindex];
        document.getElementById("myDescriptionPlacer").innerHTML = myslideshowdescriptions[myslideshowindex];
        return false;
    }

}

