﻿// JScript File


//A timer will be fired in 6 seconds to call getNextImage()
var c_interval = 6000;
window.setTimeout("getNextImage()", c_interval);

function getNextImage()
{
   //Send the request to server with the current image url as the argument
   CallServer(document.getElementById("photo").src, "");
}
         
function ReceiveServerData(rValue)
{
   //Receive server's response of a string rValue, which is prepared in the server's function
   //GetCallbackResult()
   var wds = rValue.split(";");
   //Assign the transition effect
   document.getElementById("photo").style.filter = wds[1];
   //Preload the image file from server.  When finishing download, imageLoaded function will be called
   //with the img object as the argument                           
   var img  = new Image();
   img.onload = function(){ imageLoaded(this); }
   img.onerror = function(){ imageError(this); }
   img.onabort = function(){ imageError(this); }
   img.src = wds[0];                                            
}
function imageError(img)
{
   //If image download errors occur, this function will be called.
   window.setTimeout("getNextImage()", 1000);
}
function imageLoaded(img)
{
   var photo = document.getElementById("photo");   //Find the image control object
   photo.filters[0].apply();                       //Apply the transition effect
   photo.filters[0].play();                        //Play the effect and display the new image
   photo.src = img.src;                            //Assign the image to the image control
   
   window.setTimeout("getNextImage()", c_interval);//Initiate the next request
}
