// javascript SlideShow class
// Slide a DIV up or down

var debugDivSlider = 0;

function SlideShow( timeInterval)
    {
    this.timeInterval = timeInterval;   // milliseconds

    this.timeInterval = 10;

    this.delta;                 // ticks
    this.cur;
    this.start;
    this.finish;

    this.divID = '';
    this.fxn = 0;
    this.action = '';
    }

// start the slideshow
// object must be defined as ds
SlideShow.prototype.Start = function( divID, start, finish, delta)
    {
    var d = document.getElementById( divID);
    if ( !d) return;

    // make sure animation is already occuring
    if ( this.fxn != 0)
        {
        if ( debugDivSlider)
            alert( "fxn busy");
        return;
        }

    this.divID = divID;

    this.start = this.cur = start;
    this.finish = finish;
    this.delta = delta;

    this.fxn = setInterval( 'SlideShowAction()', this.timeInterval);

    str = 'Start:' + this.start + ' Finish:' + this.finish + ' DivID:' + this.divID + ' .';
    if ( debugDivSlider)
        alert (str);

    }


// external helper function for setInterval()
// object must be defined as ds
function SlideShowAction()
    {
    var d = document.getElementById( ds.divID);
    if ( !d) return;

        {
        // update time
        ds.cur = ds.cur + ds.delta;

    str = 'cur:' + ds.cur + ' Finish:' + ds.finish + ' delta:' + ds.delta + ' .';
    if ( debugDivSlider)
        alert (str);

        if ( ds.cur > ds.finish)
            {
            // times up!
            ds.cur = ds.finish;
            clearInterval( ds.fxn);
            ds.fxn = 0;

            // change slide
//            SetSlide( 'divMainSlide', 0);
            SetSlide( ds.divID, 0);

            }
        else
            {
            ; // fading
            }
        }
    }

