var images = new Array();
var timerID = 0;
var timerIsRunning = 0;
var imageNum = 0;
var nIndex = 0;
var currentIndexVal = -1;

var imageCaptions = new Array();

var idArray = new Array();
var hiddenVarName = new Array();
var pictureText = new Array();
var formName = new Array();

function doSubmit() {
    if (currentIndexVal <= 0) {
        currentIndexVal = 0;
    }
    else if (currentIndexVal > idArray.length) {
        currentIndexVal = productCategoryId.length - 1;
    }
    
    clearTimeout(timerID);
    timerIsRunning = 0;
    submitForm = document.getElementById(formName[currentIndexVal]);
    if (submitForm ) {
        hiddenVar = submitForm.elements[hiddenVarName[currentIndexVal]];
        if (hiddenVar) {
	        submitForm.elements[hiddenVarName[currentIndexVal]].value = idArray[currentIndexVal];
	        submitForm.submit();
        }
    }
}

function playSlideshow() {
    if (timerIsRunning == 0) {
	timerID = setTimeout(slideShow, 1000);
      timerIsRunning = 1;
    }
}

function hideImages() {
    for (i=0; i<images.length; i++) {
        images[i].style.display = "none";
    }
}

function pauseOnSelection(selectionNum) {
    clearTimeout(timerID);

    hideImages();

    imageNum = selectionNum-1;
    setHighlight(imageNum);
    images[imageNum].style.display = "block";
    images[imageNum].xOpacity = .99;
    setOpacity(images[imageNum]);
    setCaption(imageNum);

    nIndex = images[selectionNum]?selectionNum:0;
    timerIsRunning = 0;
}

function pauseSlideshow() {
    clearTimeout(timerID);

    if (nIndex == imageNum) {
        images[imageNum].style.display = "block";
        images[imageNum].xOpacity = .99;
        setOpacity(images[imageNum]);
        setCaption(imageNum);

        nextImage = images[imageNum+1]?imageNum+1:0;
        images[nextImage].style.display = "none";
    }
    else {
        images[nIndex].style.display = "block";
        images[nIndex].xOpacity = .99;
        setOpacity(images[nIndex]);
        setCaption(nIndex);
        images[imageNum].style.display = "none";
    }
    timerIsRunning = 0;
}

function initialize() {
    images = document.getElementById("imageContainer").getElementsByTagName("img");
    for(i=1;i<images.length;i++) images[i].xOpacity = 0;

    images[0].style.display = "block";
    images[0].xOpacity = .99;
    imageNum = 0;
    setCaption(imageNum);
    setHighlight(imageNum);

    timerID = setTimeout(slideShow, 2500);
    timerIsRunning = 1;
}

function setOpacity(obj) {

    if(obj.xOpacity>.99) {
        obj.xOpacity = .99;
        return;
    }
    obj.style.opacity = obj.xOpacity;
    obj.style.MozOpacity = obj.xOpacity;
    obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
}

function setCaption(indexVal) {
    document.getElementById("imageCaption").innerHTML=imageCaptions[indexVal];
}          

function setHighlight(indexVal) {
    if (indexVal == currentIndexVal) {
        return;
    }

    for (i=0; i<images.length; i++) {
        linkName = "link" + (i + 1);
        if (indexVal == i) {
             document.getElementById(linkName).src = "/mps/images/" + (i+1) + "highlight.jpg";
        }
        else {
             document.getElementById(linkName).src = "/mps/images/" + (i+1) + ".jpg";
        }
    }

    currentIndexVal = indexVal;
}
	
function slideShow() {
	
    cOpacity = images[imageNum].xOpacity;
    nIndex = images[imageNum+1]?imageNum+1:0;

    nOpacity = images[nIndex].xOpacity;
	
    cOpacity-=.05; 
    nOpacity+=.05;
	
    images[nIndex].style.display = "block";
    images[imageNum].xOpacity = cOpacity;
    images[nIndex].xOpacity = nOpacity;
	
    setOpacity(images[imageNum]); 
    setOpacity(images[nIndex]);
    setCaption(nIndex);
    setHighlight(nIndex);
	
    if(cOpacity<=0) {
        images[imageNum].style.display = "none";
        imageNum = nIndex;
        timerID = setTimeout(slideShow,2500);
    }
    else {
        timerID = setTimeout(slideShow,50);
    }
	
}

