var Slides = new Array(
    '/images/meeting/featured/projector.jpg',
    '/images/meeting/featured/buggy_code.jpg',
    '/images/meeting/featured/java_at.jpg',
    '/images/meeting/featured/keyboard.jpg',
    '/images/meeting/featured/jdbc_code.jpg',
    '/images/meeting/featured/dad_baby_computing.jpg',
    '/images/meeting/featured/asian_smiling.jpg',
    '/images/meeting/featured/indian_it_smiling.jpg',
    '/images/meeting/featured/computing_at_restaurant.jpg'
);

function CacheImage(ImageSource) {
    var ImageObject = new Image();
    ImageObject.src = ImageSource;
    return ImageObject;
}

function ShowSlide(Direction) {
    if (SlideReady) {
        NextSlide = CurrentSlide + Direction;
        // THIS WILL DISABLE THE BUTTONS (IE-ONLY)
        // document.SlideShow.Previous.disabled = (NextSlide == 0);
        // document.SlideShow.Next.disabled = (NextSlide == (Slides.length-1));
        if ((NextSlide >= 0) && (NextSlide < Slides.length)) {
            document.images['Screen'].src = Slides[NextSlide].src;
            CurrentSlide = NextSlide++;
            Message = 'Picture ' + (CurrentSlide+1) + ' of ' + Slides.length;
            self.defaultStatus = Message;
            if (Direction == 1) CacheNextSlide();
        }

        if (NextSlide == Slides.length) {
            CurrentSlide = -1;
        }
        return true;
    }
}
function Download() {
    if (Slides[NextSlide].complete) {
        SlideReady = true;
        self.defaultStatus = Message;
    }
    else setTimeout("Download()", 100); // CHECKS DOWNLOAD STATUS EVERY 100 MS
    return true;
}

function CacheNextSlide() {
    if ((NextSlide < Slides.length) && (typeof Slides[NextSlide] == 'string'))
    { // ONLY CACHES THE IMAGES ONCE
        SlideReady = false;
        self.defaultStatus = 'Downloading next picture...';
        Slides[NextSlide] = CacheImage(Slides[NextSlide]);
        Download();
    }
    return true;
}

function StartSlideShow() {
    CurrentSlide = -1;
    Slides[0] = CacheImage(Slides[0]);
    SlideReady = true;
    ShowSlide(1);
    setInterval("ShowSlide(1)", 3000);
}