﻿function RotateImage(id, dur) {
    var element = $('__' + id);
    var curpos = element.currentpos;
    element.currentpos = (element.currentpos + 1) % element.arraysize;
    
    //fade out current image and caption
    Effect.Fade(element.srcArray[curpos], { duration: dur });
    Effect.Fade(element.srcArray[curpos].select('div.caption')[0]);

    //fade in next image and caption
    Effect.Appear(element.srcArray[element.currentpos], { duration: dur });
    Effect.Appear(element.srcArray[element.currentpos].select('div.caption')[0]);
}

function ImageRotatorInit(id, delay) {
    if (!window.top.rotators) {
        window.top.rotators = new Hash();
    } else {
        var x = window.top.rotators.get(id);
        if (x) {
            window.top.clearInterval(x); 
        }
    }
    var adrotator = $('__' + id);
    
    if (adrotator) {
        adrotator.currentpos = 0;
        adrotator.srcArray = adrotator.select('li');
        adrotator.arraysize = adrotator.select('li').size();
        var rotateFn = "RotateImage('" + id + "', 3.0)";
        var i = window.top.setInterval(rotateFn, delay ? delay : 8000);
        window.top.rotators.set(id,i); 
    }
}
