﻿var playTimeoutID;
var varLastSlideIndex;
var varSlideIndex;
var varSpeed;

function clickShowSlide(varSlideIndexIn) {
    clearTimeout(playTimeoutID);
    playTimeoutID = 0;
    document.getElementById("imgPlayPause").src = "library/images/play_button.gif";
    if (varSlideIndex != varSlideIndexIn) {
        varSlideIndex = varSlideIndexIn;
        showSlide();
    }
}

function autoShowSlide(varSlideIndexIn) {
    varSlideIndex = varSlideIndexIn;
    showSlide();
    playTimeoutID = setTimeout("autoShowSlide(" + (varSlideIndex + 1) + ")", varSpeed * 1000);
}

function showSlide() {
    var varSlideTotal = (document.getElementById("divSlidesContainer").getElementsByTagName("div").length) / 2;
    if (varSlideIndex > varSlideTotal) {
        varSlideIndex = varSlideIndex % varSlideTotal;
    }
    if (varSlideIndex == 0) {
        varSlideIndex = varSlideTotal;
    }
    for (i = 1; i <= varSlideTotal; i++) {
        document.getElementById("divSlide" + i).style.visibility = "hidden";
        //document.getElementById("divSlideImage" + i).height = document.getElementById("imgSlideImage" + i).height;
    }
    document.getElementById("divSlide" + varSlideIndex).style.visibility = "visible";
    if (document.getElementById("lnkPreviousSlide") != null) {
        document.getElementById("lnkPreviousSlide").href = "javascript:clickShowSlide(" + (varSlideIndex - 1) + ");";
    }
    if (document.getElementById("lnkNextSlide") != null) {
        document.getElementById("lnkNextSlide").href = "javascript:clickShowSlide(" + (varSlideIndex + 1) + ");";
    }
    if (document.getElementById("lnkSlide" + varLastSlideIndex) != null) {
        document.getElementById("lnkSlide" + varLastSlideIndex).className = "clsSlideLink";
    }
    if (document.getElementById("lnkSlide" + varSlideIndex) != null) {
        document.getElementById("lnkSlide" + varSlideIndex).className = "clsCurrentSlideLink";
    }
    
    blendimage("imgSlideImage" + varSlideIndex, 500);

    //set the current image as background
    for (i = 1; i <= varSlideTotal; i++) {
        if (i != varSlideIndex) {
            document.getElementById("divSlideImage" + i).style.backgroundImage = "url(" + document.getElementById("imgSlideImage" + varSlideIndex).src + ")";
        }
    }

    varLastSlideIndex = varSlideIndex;

    return varSlideIndex;
}

function blendimage(imageid, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //make image transparent
    changeOpac(0, imageid);

    //fade in image
    for (i = 0; i <= 100; i++) {
        setTimeout("changeOpac(" + i + ",'" + imageid + "')", (timer * speed));
        timer++;
    }
} 

//change the opacity for different browsers
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 play(startindex, speedIn) {
    document.getElementById("imgPlayPause").src = "library/images/pause_button.gif";

    varSpeed = speedIn;
    varLastSlideIndex = startindex;
    varSlideIndex = startindex;
    showSlide();
    playTimeoutID = setTimeout("autoShowSlide(" + (startindex + 1) + ")", varSpeed * 1000);
}

function playPause() {
    if (playTimeoutID > 0) {
        clearTimeout(playTimeoutID);
        playTimeoutID = 0;
        document.getElementById("imgPlayPause").src = "library/images/play_button.gif";
    } else {
        playTimeoutID = setTimeout("autoShowSlide(" + (varSlideIndex + 1) + ")", varSpeed * 1000);
        document.getElementById("imgPlayPause").src = "library/images/pause_button.gif";
    }
}
