var is_mouse_over = false;
var image_pointer = 0;

var image_id = new Array (
                            "aa",
                            "ba",
                            "cosi",
                            "customs",
                            "gaston",
                            "harris",
                            "mortara",
                            "peikoff",
                            "starbucks",
                            "united"
                            );


// Array of URLs            
var links = new Array(
                            "./portfolio/Aviation/aa_admirals_club", 
                            "./portfolio/Aviation/ba_premeir_lounge",
                            "./portfolio/Interiors/cosi",
                            "./portfolio/Aviation/federal_inspection_services",
                            "./portfolio/Institutional/GastonHall",
                            "./portfolio/Institutional/HarrisBuilding",
                            "./portfolio/Interiors/mortara",
                            "./portfolio/Institutional/PeikoffAlumniHouse",
                            "./portfolio/Interiors/starbucks", 
                            "./portfolio/Aviation/united_terminal"
                            );



// Delay between image transitions
var ms_delay = 4000;

// Pointer to the showcase img tag
var image;

function onPageLoad() {
    // Pre-load the images
    if (document.images) {
        var preload_image_object = new Image();
        var i = 0;
        for(i = 0; i < image_id.length; i++) {
            var image_name = image_id[i];
            preload_image_object.src = getImageName(image_name, true);
            preload_image_object.src = getImageName(image_name, false);
        }
    }

    
    // Set a callback for 2000ms in the future.
    setTimeout("rotate_image(" + ms_delay + ");", ms_delay); 
    image = document.getElementById("showcase"); 
    image.onclick = openCurrentLink; 
    image.onMouseOver = mouseIsOver;
    image.onMouseOut = mouseIsOut;

    
    
}



// Callback function
function rotate_image (millisecs) {
    
    // Don't rotate the image if the mouse if hovering, user may be trying to click
    if ( ! is_mouse_over ) {
        
        // Advance the image pointer
        image_pointer++;
        
        // Loop pointer to start of array when we reach the end of the array.
        if ( image_pointer >= image_id.length ) {
            image_pointer = 0; 
        }

        // Show the image
        show_image();
    }
    
    // Queue up the next event callback
    setTimeout("rotate_image(" + millisecs + ");", millisecs); 
}

function show_image() {
    var image_name = image_id[image_pointer];
    image.src = getImageName(image_name, is_mouse_over);
}

function getImageName(base_name, is_over) {
    var retval;
    if ( is_over ) {
        retval = "./images/" + base_name + "_selected.png";
    } else {
        retval = "./images/" + base_name + "_unselected.png";
    }
    return retval;
}

// The mouse has entered the showcase
function mouseIsOver() {
    is_mouse_over = true;
    show_image();
}

// The mouse has left the showcase            
function mouseIsOut() {
    is_mouse_over = false;
    show_image();
}

// The mouse has been clicked
function openCurrentLink() {
    window.location = links[image_pointer];
}
        


