
// set on startup
var displaynext;
var displayImage;

function ann_startup() {

    var present_slide = 0;
    var timer = 1;
    var speed = 6000;
    var bustcachevar = 1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
    var loadedobjects = ""
    var rootdomain = "http://" + window.location.hostname
    var bustcacheparameter = ""

    var images = new Array(
'images/announce/ipod_230.jpg',
'images/announce/fdic_230.jpg',
'images/announce/featuredprop_230.jpg'
);

    var urls = new Array(
'personal/checking/',
'news/',
'mortgage/featuredproperties/'
);

    objImage = new Image();

    function download(img_src) {
        // preload the image file
        objImage.src = images[img_src];
    }

    function clearImageEffects() {
        var Queue = Effect.Queues.get('global');
        Queue.each(function(effect) {
            if (jQuery(effect.element).parents().is("#diva")) {
                effect.cancel();
            }
        });
    }

    var CurButton = -1;

    function selectImage(newimage) {
        if (CurButton == newimage) {
            return;
        }
        var selected = $$(".pagingSelected");

        if (CurButton >= 0) {
            Effect.Fade(selected[CurButton], { duration: Duration });
            Effect.Appear(selected[newimage], { duration: Duration });
        }
        else {
            selected[newimage].setStyle({ display: "inline" });
        }
        
        CurButton = newimage;
    }

    var CurBuffer = 0;
    var Timeout;
    var ButtonTimeout;
    var Duration = 1.0;

    

    displayImage = function(image) {
        // Cancel any pending timers or effects.
        // This code uses two elements to perform
        // the fade transition. It reuses them for every element.
        // Any pending operations should be canceled because the
        // image it started will with be different after this call so it will behave wrong.    
        if (typeof (Timeout) != "undefined") {
            clearTimeout(Timeout);
        }
        if (typeof (ButtonTimeout) != "undefined") {
            clearTimeout(ButtonTimeout);
        }

        clearImageEffects();

        selectImage(image);

        var old = present_slide;
        present_slide = image;
        if (images.length > present_slide && present_slide >= 0) {
            if (CurBuffer == 0) {
                document.images['im2'].src = images[present_slide];
                document.getElementById('imlink2').href = urls[present_slide];
                Effect.Fade(document.getElementById('imdiv'), { duration: Duration });
                Effect.Appear(document.getElementById('imdiv2'), { duration: Duration });
                CurBuffer = 1;
            }
            else {
                document.images['im'].src = images[present_slide];
                document.getElementById('imlink').href = urls[present_slide];

                Effect.Fade(document.getElementById('imdiv2'), { duration: Duration });
                Effect.Appear(document.getElementById('imdiv'), { duration: Duration });
                CurBuffer = 0;
            }

            var next_slide = present_slide + 1;
            download(next_slide); // Download the next image
            Timeout = setTimeout("displaynext(1)", speed);
        }
        if (present_slide + 1 >= images.length) {
            present_slide = -1;
        }
        else {
            if (present_slide < 0) {
                present_slide = images.length - 1;
            }
        }

        
    }

    displaynext = function(shift) {

        // Cancel any pending timers or effects.
        // This code uses two elements to perform
        // the fade transition. It reuses them for every element.
        // Any pending operations should be canceled because the
        // image it started will with be different after this call so it will behave wrong.    
        if (typeof (Timeout) != "undefined") {
            clearTimeout(Timeout);
        }
        if (typeof (ButtonTimeout) != "undefined") {
            clearTimeout(ButtonTimeout);
        }

        clearImageEffects();


        present_slide = present_slide + shift;
        if (present_slide < 0) {
            present_slide = images.length - 1;
        }

        if (images.length > present_slide && present_slide >= 0) {
            if (shift == 0) {
                document.images['im2'].src = images[present_slide];
                document.getElementById('imlink2').href = urls[present_slide];
                document.getElementById('imdiv2').style.display = 'block';
                CurBuffer = 1;
            }
            else if (CurBuffer == 0) {
                document.images['im2'].src = images[present_slide];
                document.getElementById('imlink2').href = urls[present_slide];
                Effect.Fade(document.getElementById('imdiv'), { duration: Duration });
                Effect.Appear(document.getElementById('imdiv2'), { duration: Duration });
                CurBuffer = 1;
            }
            else {

                document.images['im'].src = images[present_slide];
                document.getElementById('imlink').href = urls[present_slide];

                Effect.Fade(document.getElementById('imdiv2'), { duration: Duration });
                Effect.Appear(document.getElementById('imdiv'), { duration: Duration });
                CurBuffer = 0;
            }

            var next_slide = present_slide + 1;
            download(next_slide); // Download the next image
            Timeout = setTimeout("displaynext(1)", speed);
        }
        if (shift > 0 && (present_slide + 1 >= images.length)) {
            selectImage(present_slide);
            present_slide = -1;

        }
        else {
            if (present_slide < 0) {
                present_slide = images.length - 1;
                selectImage(images.length - 1);
            }
            else {
                selectImage(present_slide);
            }
        }
    }
    displaynext(0);
}

//jQuery(document).ready(function() {
    ann_startup();
//});