var autoCycleTimeOutHandle = null;

var currentTestimonial = 1;
var numberOfTestimonials = 5;

var ignoreNextFadeOut = false;

function inactivateAllLogos() {
    var i;
    for (i = 1; i <= numberOfTestimonials; i++) {
        var activeDivId = "test_logo_active_" + i;
        $(activeDivId).style.display = "none";
        var inactiveDivId = "test_logo_inactive_" + i;
        $(inactiveDivId).style.display = "block";
    }
}

function activateLogo(inTestimonialNumber) {
    var activeDivId = "test_logo_active_" + inTestimonialNumber;
    $(activeDivId).style.display = "block";
    var inactiveDivId = "test_logo_inactive_" + inTestimonialNumber;
    $(inactiveDivId).style.display = "none";
}

function showInstantly(inTestimonialNumber) {
    clearTimeout(autoCycleTimeOutHandle);
    currentTestimonial = inTestimonialNumber;

    inactivateAllLogos();
    activateLogo(inTestimonialNumber);

    var i;
    for (i = 1; i <= numberOfTestimonials; i++) {
        var divId = "test_" + i;
        $(divId).style.display = "none";
    }
   var divId = "test_" + inTestimonialNumber;
   new Effect.multiple(
	        [divId],
	        Effect.Appear,
	        {duration: 0.0, from: 0.0, to: 1.0});
	        
    autoCycleTimeOutHandle = window.setTimeout("fadeOut()", 15000);
}

function fadeIn() {
    currentTestimonial++;
    if (currentTestimonial > numberOfTestimonials) {
        currentTestimonial = 1;
    }
    var divId = "test_" + currentTestimonial;
    new Effect.multiple(
        [divId],
        Effect.Appear,
        {duration: 0.5, from: 0.0, to: 1.0});
        autoCycleTimeOutHandle = window.setTimeout("fadeOut()", 15000);

    inactivateAllLogos();
    activateLogo(currentTestimonial);
}

function fadeOut() {
    if (autoCycleTimeOutHandle != null) {
        clearTimeout(autoCycleTimeOutHandle);
    }
    if (ignoreNextFadeOut) {
        ignoreNextFadeOut = false;
        return;
    }

    var divId = "test_" + currentTestimonial;
    new Effect.multiple(
        [divId],
        Effect.Appear,
        {duration: 0.5, from: 1.0, to: 0.0});
        autoCycleTimeOutHandle = window.setTimeout("fadeIn()", 1000);
}

Event.observe(
    window,
    'load',
    function() {
        Event.observe('test_logo_1', 'mouseover', function() { showInstantly(1); } );
        Event.observe('test_logo_2', 'mouseover', function() { showInstantly(2); } );
        Event.observe('test_logo_3', 'mouseover', function() { showInstantly(3); } );
        Event.observe('test_logo_4', 'mouseover', function() { showInstantly(4); } );
        Event.observe('test_logo_5', 'mouseover', function() { showInstantly(5); } );
        autoCycleTimeOutHandle = window.setTimeout("fadeOut()", 15000);
    }

);



