
    var opacitySpeed = 2;    
    var opacitySteps = 10;     
    var slideSpeed = 5;
    var slideSteps = 8;

    var SS_thumbTotalWidth = false;
    var SS_viewableWidth = false;
    
    var SS_thumbDiv = false;
    var SS_thumbSlideInProgress = false;
    
    var browserIsOpera = navigator.userAgent.indexOf('Opera')>=0?true:false;
    var leftArrowObj;
    var rightArrowObj;
    var thumbsColIndex = 1;
    var thumbsLeftPos = false;
    var srcLeftArrowObj;
    var srcRightArrowObj;
    var srcLeftArrowObjOff;
    var srcRightArrowObjOff;
    var crtDiv = 0;
    var SS_subDivstmpLeft = new Array();
    var SS_subDivsWidth = new Array();
    var auto_play_timeout = 5000;
    var reset_auto_play = false;
    var auto_play_start_direction = 'right';

    function initSlideShow()
    {
        leftArrowObj = document.getElementById('control_leftArrow');
        leftArrowObj.style.visibility='visible';
        leftArrowObj.style.cursor = 'pointer';
        leftArrowObj.onclick = moveThumbnails;
        srcLeftArrowObj = leftArrowObj.src;
        
        leftArrowObjOff = document.getElementById('control_leftArrow_Off');
        leftArrowObjOff.style.visibility='hidden';
        srcLeftArrowObjOff = leftArrowObjOff.src;
        
        setArrow( leftArrowObj, 'left', 'hidden' );
        
        rightArrowObj = document.getElementById('control_rightArrow');
        rightArrowObj.style.cursor = 'pointer';
        rightArrowObj.onclick = moveThumbnails;
        srcRightArrowObj = rightArrowObj.src;

        rightArrowObjOff = document.getElementById('control_rightArrow_Off');
        rightArrowObjOff.style.visibility = 'hidden';
        srcRightArrowObjOff = rightArrowObjOff.src;

        var innerDiv = document.getElementById('SS_thumbs_inner');
        SS_thumbDiv = document.getElementById('SS_thumbs_inner');
        SS_thumbDiv.style.left = '0px';
        
        var subDivs = SS_thumbDiv.getElementsByTagName('DIV');
        SS_thumbTotalWidth = 0;
        var tmpLeft = 0;

        var txt = '';
        var nrSubDivs = 0;
        for(var no=0;no<subDivs.length;no++){
            if( subDivs[no].className=='con_master_special' )
            {
                fixStep = ( subDivs[no].offsetWidth % slideSteps ) ;
                subDivs[no].style.left = 4+tmpLeft + 'px';
                subDivs[no].style.width = subDivs[no].offsetWidth - fixStep + slideSteps + 'px';
                subDivs[no].style.top = '0px';
                tmpLeft = tmpLeft + subDivs[no].offsetWidth;
                SS_subDivstmpLeft[nrSubDivs] = tmpLeft;
                SS_subDivsWidth[nrSubDivs] = subDivs[no].offsetWidth;
                SS_thumbTotalWidth = SS_thumbTotalWidth + SS_subDivsWidth[nrSubDivs];

                nrSubDivs++;
            }
        }

        SS_viewableWidth = document.getElementById('SS_thumbs').offsetWidth;
        setTimeout(autoPlay, auto_play_timeout);
    }
    
    function autoPlay()
    {
        if (reset_auto_play) {
            return;
        }

        if(SS_thumbSlideInProgress)
        {
            setTimeout(autoPlay, auto_play_timeout);
            return;
        }

        SS_thumbSlideInProgress = true;
        if( auto_play_start_direction == 'left' )
        {
            thumbsColIndex--;
            var SS_crtWidth = ( SS_subDivsWidth[thumbsColIndex-1] ) ? SS_subDivsWidth[thumbsColIndex-1] : 0;
            setArrow( rightArrowObj, 'right', 'visible' );
            if( SS_thumbDiv.style.left.replace('px','')/1 >= 0 )
            {
                SS_thumbDiv.style.left = '0px';
                setArrow( leftArrowObj, 'left', 'hidden' );
                SS_thumbSlideInProgress = false;
                auto_play_start_direction = 'right';
                autoPlay();
                return;
            }

            slideThumbs( slideSteps, 0, SS_crtWidth );

        }else{
            thumbsColIndex++;
            var SS_crtWidth = ( SS_subDivsWidth[thumbsColIndex-2] ) ? SS_subDivsWidth[thumbsColIndex-2] : 0;

            setArrow( leftArrowObj, 'left', 'visible' );
            var showArrow = true;

            var left = SS_thumbDiv.style.left.replace('px','')/1;
            position = SS_thumbTotalWidth + left;
            if( position <= SS_viewableWidth )
            {
                showArrow = false;
            }

            if(!showArrow)
            {
                thumbsColIndex--;
                setArrow( rightArrowObj, 'right', 'hidden' );
                SS_thumbSlideInProgress = false;
                auto_play_start_direction = 'left';
                autoPlay();
                return;
            }

            slideThumbs((slideSteps*-1), 0, SS_crtWidth );
            
        }
        
        setTimeout( autoPlay, auto_play_timeout );
        
    }
    
    function moveThumbnails()
    {
        reset_auto_play = true;
        if(SS_thumbSlideInProgress) return;

        SS_thumbSlideInProgress = true;
        if( this.id=='control_leftArrow' )
        {
            thumbsColIndex--;
            var SS_crtWidth = ( SS_subDivsWidth[thumbsColIndex-1] ) ? SS_subDivsWidth[thumbsColIndex-1] : 0;
            setArrow( rightArrowObj, 'right', 'visible' );
            if( SS_thumbDiv.style.left.replace('px','')/1>=0)
            {
                setArrow( leftArrowObj, 'left', 'hidden' );
                SS_thumbSlideInProgress = false;
                return;
            }
            
            slideThumbs( slideSteps, 0, SS_crtWidth );
            
        }else{
            thumbsColIndex++;
            var SS_crtWidth = ( SS_subDivsWidth[thumbsColIndex-2] ) ? SS_subDivsWidth[thumbsColIndex-2] : 0;

            setArrow( leftArrowObj, 'left', 'visible' );
            var left = SS_thumbDiv.style.left.replace('px','')/1;
            var showArrow = true;
            
            if( SS_thumbTotalWidth + left - SS_crtWidth <= SS_viewableWidth )
            {
                showArrow = false;
            }
            if( columnsOfThumbnails )
            {
                showArrow = true;
            }
                
            if(!showArrow)    
            {
                setArrow( rightArrowObj, 'right', 'hidden' );
                SS_thumbSlideInProgress = false;
                return;
            }    
            
            slideThumbs((slideSteps*-1), 0, SS_crtWidth );
        }    
    }
    
    function slideThumbs( steps, currentPos, crtWidth )
    {
        if( !crtWidth )
        {
            SS_thumbSlideInProgress = false;
            return;
        }
        var leftPos;
        if(thumbsLeftPos){
            leftPos= thumbsLeftPos;
        }else{
            var leftPos = SS_thumbDiv.style.left.replace('px','')/1;
            thumbsLeftPos = leftPos;
        }
        currentPos = currentPos + Math.abs(steps);
        var tmpLeftPos = leftPos;
        leftPos = leftPos + steps;
        thumbsLeftPos = leftPos;
        SS_thumbDiv.style.left = leftPos + 'px';

        if( currentPos < crtWidth )
        {
            setTimeout('slideThumbs(' + steps + ',' + currentPos + ', ' + crtWidth + ')', slideSpeed );
        }
        else
        {
            if(tmpLeftPos>=0 || (columnsOfThumbnails && thumbsColIndex==1))
            {
                setArrow( leftArrowObj, 'left', 'hidden' );
            }    
            var left = tmpLeftPos;        
            var showArrow = true;
            if(SS_thumbTotalWidth + left - crtWidth <= SS_viewableWidth)showArrow=false;
            if(columnsOfThumbnails)
            {
                if((thumbsColIndex+1)<=columnsOfThumbnails)showArrow=true; else showArrow = false;
            }            
            if(!showArrow)
            {
                setArrow( rightArrowObj, 'right', 'hidden' );
            }                    
            SS_thumbSlideInProgress = false;
        }
    }
    
    function setArrow( obj, arrow, mode )
    {
        var srcOn = ( arrow == 'left' ) ? srcLeftArrowObj : srcRightArrowObj;
        var srcOff = ( arrow == 'left' ) ? srcLeftArrowObjOff : srcRightArrowObjOff;

        switch( mode )
        {
            case 'visible':
                obj.src = srcOn;
                obj.onclick = moveThumbnails;
                obj.style.cursor = 'pointer';
                break;
                
            case 'hidden':
                obj.src = srcOff;
                obj.onclick = null;
                obj.style.cursor = null;
                break;
        }
    }

