function slide(slide){
    var $ = jQuery,
    current = 0,
    itens = $(".reel .item", slide),
    itensWidth = 668,
    itenHeight = $(itens[0]).height(),
    itemSum = itens.size(),
    reelWidth = itensWidth * itemSum,
    _slide = $(slide),
    currentHeight = 0,

    reel = $(".reel", slide);

    _slide.height(itenHeight);

    $(".reel .item:first", slide).load(function(e){
        currentHeight = this.height;
        reel.css({
            'height' : this.height
            });
        _slide.css({
            'height' : this.height
            });
    });

    $("a.setaEsquerda, a.setaDireita", slide).hide();

    if(itemSum <= 1){
        reel.css({
            'width' : itensWidth
        });
        return;
    }

    reel.css({
        'width' : reelWidth
    });

    var rotate = function(c){
        var _height = 0;

        if(c == -itemSum){
            c = 0;
            current = 0;
        }
        if(c > 0){
            c = 0;
            current = 0;
        }

        if(!c) {
            $("a.setaEsquerda", slide).hide();
        } else {
            $("a.setaEsquerda", slide).show();
        }

        if(c == -(itemSum -1)) {
            $("a.setaDireita", slide).hide();
        } else if(itemSum > 1) {
            $("a.setaDireita", slide).show();
        }

        _height = $(".reel .item:eq(" + (c * -1)+")", slide).height();

        var reelPosition = c * itensWidth;

        if(_height != currentHeight) {
            $("a.setaDireita, a.setaEsquerda", slide).animate({
                top: (_height / 2) - 20
            }, 700);
        }

        if(_height > currentHeight) {

            reel.animate({
                left: reelPosition,
                height: _height
            }, 700);
            setTimeout(function(){
                _slide.animate({
                    height: _height
                }, 700);
            }, 700)

        } else {
            _slide.animate({
                height: _height
            }, 700);
            setTimeout(function(){
                reel.animate({
                    left: reelPosition,
                    height: _height
                }, 700);
            }, 700)
        }

        currentHeight = _height;
    };

    function next(){
        rotate(--current);
        return false;
    }

    function preview(){
        rotate(++current);
        return false;
    }

    $("a.setaEsquerda", slide).click(preview);
    $("a.setaDireita", slide).click(next);

    $(".reel .item:eq(0)", slide).load(function(){
        _height = $(this).height();

        $("a.setaEsquerda, a.setaDireita",slide).css('top',(_height / 2) - 20);

        if(window.console) console.debug(itemSum)

        if(itemSum > 1) {
            
            $("a.setaDireita", slide).show();
        }
    });

    
}

(function($){

    $(document).ready(function(){
        $(".slide").each(function(i,e){
            slide(e);
        });
    });

})(jQuery);
