// dojo.require( 'dojo.data.ItemFileReadStore' );
// dojo.require( 'dojox.image.ThumbnailPicker' );
dojo.require("dojo.fx.easing");


var item_count= 5;
var item_width= dojoSliderConfig.itemWidth;


var slider_paused= false;
var is_animating= false;

function carouselStartup( element )
{
    dojo.connect( element, 'onmouseenter', function(){ slider_paused = true; } );
    dojo.connect( element, 'onmouseleave', function(){ slider_paused = false; } );
    
    var items= dojo.query( 'a', element );

    item_count= items.length;
    
    var clones= new Array();

    items.forEach(
            function ( elem )
            {
                var tmp= elem.cloneNode(true);
                clones.push( tmp );
            }
        );

    for( itr= 0; itr < clones.length; itr++ )
        element.appendChild( clones[ itr ] );





    window.setInterval(
        function( )
        {
            if( slider_paused || is_animating )
                return;


            is_animating= true;
            
            var tgt= ( parseInt( element.style.left ) - item_width );

            console.log( tgt );
            console.log( -item_width* item_count );

            if( tgt < ( -item_width*item_count ) )
            {
                element.style.left= '0px';
                tgt= -item_width;
            }

            var an= dojo.anim( element, { 'left': tgt }, 500, dojo.fx.easing.quadInOut, function(){ is_animating= false } );
            an.play();
        },
        3500

    );

    if( dojoSliderConfig.buttonsEnabled )
    {
    dojo.connect(
        dojo.byId( 'sliderRightArrow' ),
        'onclick',
        function( )
        {
            if( is_animating )
                return;

            is_animating= true;
            
            
            var tgt= ( parseInt( element.style.left ) - item_width );

            console.log( tgt );
            console.log( -item_width* item_count );

            if( tgt < ( -item_width*item_count ) )
            {
                element.style.left= '0px';
                tgt= -item_width;
            }

            var an= dojo.anim( element, { 'left': tgt }, 500, dojo.fx.easing.quadInOut, function(){ is_animating= false } );
            an.play();
        }
        );



        dojo.connect( dojo.byId( 'sliderRightArrow' ), 'onmouseenter', function(){ slider_paused = true; } );
        dojo.connect( dojo.byId( 'sliderRightArrow' ), 'onmouseleave', function(){ slider_paused = false; } );

    dojo.connect(
        dojo.byId( 'sliderLeftArrow' ),
        'onclick',
        function( )
        {
            if( is_animating )
                return;

            is_animating= true;


            var tgt= ( parseInt( element.style.left ) + item_width );

//             console.log( tgt );
//             console.log( -item_width* item_count );

            if( tgt > 0 )
            {
                element.style.left= ""+item_width*(-1)*item_count+'px';
                tgt= -item_width*(item_count-1);
            }

            var an= dojo.anim( element, { 'left': tgt }, 500, dojo.fx.easing.quadInOut, function(){ is_animating= false } );
            an.play();
        }
        );


        dojo.connect( dojo.byId( 'sliderLeftArrow' ), 'onmouseenter', function(){ slider_paused = true; } );
        dojo.connect( dojo.byId( 'sliderLeftArrow' ), 'onmouseleave', function(){ slider_paused = false; } );
    }
}


function initDojoCarousel()
{

    dojo.query( "*.mtDojoRotated" ).forEach( carouselStartup );




}







dojo.addOnLoad( initDojoCarousel );

