function rotate(){
  var container = "#banners"; //objeto que mantem toda a estrutra
  var estrutura = "p"; //estrutra das imagens  
  var ativaDescr = false; //ativa ou desativa descricao
  var ativaFadeDescr = false; //ativa ou desativa fade de descricao
  var ativaNav = true; //ativa ou desativa navegacao
  var ativaFadeNav = false; //ativa ou desativa fade de navegacao
  var ativaProxAnt = true; //ativa ou desativa botoes de proximo e anterior
  var ativaFadeProxAnt = false; //ativa ou desativa fade de proximo e anterior
  var largMediaImgs = 1000; //largura media entre as imagens usadas no banner
  var altMediaImgs = 331; //altura media entre as imagens usadas no banner
  var tempo = 8; //tempo entre transicoes em segundos
  var modoAnima = "rotateInf";
  //rotate - para movimento horizontal
  //rotateInf - movimento horizontal infinito
  //fade - transicao com fade out
  
  var idNav = "navegation"; //nome do id para a navegaca‹o
  var idBtProx = "btn_prox"; //nome do id para o botao proximo
  var idBtAnt = "btn_ant"; //nome do id para o botao anterior
  var classeDescr = "descricao"; //nome da classe para a descricao
  var classeBtsNav = "botao"; //nome da classe para os botoes da navegacao
  var classePrefixoBtsNav = "bt"; //prefixo para a classe unica de cada botao da navegacao  
  var prefixo = "img"; //prefixo da classe de cada banner que tera aplicado um numero nele
  var cAtual = "visivel"; //classe do banner sendo visto
  var cSeg = "ultimo"; //classe do banner visto anteriormente
  var cBtAtual = "vendo"; //classe do botao da navegacao referente ao banner sendo visto
  var centroContainer = "centro_container"; //nome do id para o container central dos banners (para o modo rotate)
  var bannersContainer = "banners_container"; //nome do id para o container dos banners (para o modo rotate)

  var local = container+" "+estrutura;
  var compr = $(local).length;
  var id_nav = "#"+idNav;
  var id_btprox = "#"+idBtProx;
  var id_btant = "#"+idBtAnt;
  var id_cc = "#"+centroContainer;
  var id_bc = "#"+bannersContainer;
  var classe_descr = "."+classeDescr;
  var vendo = 0;
  var ant = compr-1;
  var aant = compr-2;  
  var seletor = local+"."+prefixo+vendo;
  var estrutura1 = estrutura+":first";
  var estrutural = estrutura+":last";
  var local2 = container+" "+id_cc+" "+id_bc+" "+estrutura;
  
  $(container).addClass(modoAnima);
  if(modoAnima == "rotate" || modoAnima == "rotateInf"){
    var html = $(container).html();
    var estr1 = $('<div>').append($(container).find(estrutura1).clone()).remove().html();
	var estr2 = $('<div>').append($(container).find(estrutura1).next().clone()).remove().html();
    var estrl = $('<div>').append($(container).find(estrutural).clone()).remove().html();
	var estrbl = $('<div>').append($(container).find(estrutural).prev().clone()).remove().html();
    $(container).html("<div id='"+centroContainer+"'><div id='"+bannersContainer+"'>"+estrbl+estrl+html+estr1+estr2+"</div></div>", html);
    var ccml = "-"+(largMediaImgs/2)+"px";
	var bcl = "-"+(largMediaImgs*2)+"px";
    $(id_cc).css({width: largMediaImgs, left: "50%", marginLeft: ccml, position: "absolute"});
	$(id_bc).css({left: bcl, position: "absolute"});
  }

  if(ativaNav){
    $(container).append("<div id='"+idNav+"'></div>");
	var comprimento = 0;
	if(modoAnima == "fade"){
	  comprimento = $(local).length;
	} else if(modoAnima == "rotate" || modoAnima == "rotateInf"){
	  comprimento = $(local2).length;
	  comprimento = comprimento - 4;
	}
    for(i = 0; i < comprimento; i++){
      $(container).find(id_nav).append("<a class='"+classeBtsNav+" "+classePrefixoBtsNav+i+"' href='javascript:void(0);'></a>");
      if(i == 0){
	  var bt = container+" "+id_nav;
	  $(bt).find("a").addClass(cBtAtual);
      }
    }
	if(ativaFadeNav){
		$(container).find(id_nav).css({opacity: 0.0});
	}
  }
  
  if(ativaProxAnt){
    $(container).append("<div id='"+idBtProx+"'></div>");
    $(container).append("<div id='"+idBtAnt+"'></div>");
	if(ativaFadeProxAnt){
		$(id_btprox).css({opacity: 0.0});
		$(id_btant).css({opacity: 0.0});
	}
  }
  
  /*-------------------------------- LINHA ABAIXO INSERIDO PARA ARRUMAR BANNER NO SITE DO CESTA MAXIMO --------------------------------*/
  $(container).append("<div id='pag_numbers_bg'></div>");

  $(local).each(function(index){
    
    if(modoAnima == "fade"){
      var wimg = $(this).find("img").outerWidth();
      if(wimg == 0 || wimg == null || wimg == ""){
		wimg = largMediaImgs;
      }
      var ml = "-"+(wimg/2)+"px";
      $(this).css({left: "50%", marginLeft: ml});      
      if(index == 0){
		$(this).addClass(cAtual);
		$(this).css({zIndex: 10, opacity: 0.0});
      } else if(index == (compr - 1)) {
		$(this).addClass(cSeg);
		$(this).css({zIndex: 9, opacity: 0.0});
      } else {
		$(this).css({zIndex: 8, opacity: 0.0});
      }
      $(this).addClass(prefixo+index);

      
    } else if(modoAnima == "rotate" || modoAnima == "rotateInf"){
      var himg = $(this).find("img").outerHeight();
      if(himg == 0 || himg == null || himg == ""){
		himg = altMediaImgs;
      }
      var posl = index * largMediaImgs;
      $(container).css({height: himg});
      $(this).css({height: himg, width: largMediaImgs, left: posl});
      if(index == 0){
		$(this).addClass(prefixo+"bl");
	  } else if(index == 1){
		$(this).addClass(prefixo+"l");
      } else if(index == 2){
		$(this).addClass(cAtual);
		$(this).addClass(prefixo+(index-2));
      } else if(index == compr) {
		$(this).addClass(cSeg);
		$(this).addClass(prefixo+(index-2));
      } else if(index == (compr + 2)){
		$(this).addClass(prefixo+"f");
      } else if(index == (compr + 3)){
		$(this).addClass(prefixo+"s");
      } else {
		$(this).addClass(prefixo+(index-2));
      }
    }
    
    if(ativaDescr){
      if($(this).find("img").attr("alt")){
		  var descricao = $(this).find("img").attr("alt");
		  if(descricao.length > 0){
			  var html = $(this).html();
			  $(this).html("<div class='"+classeDescr+"'><span>"+descricao+"</span></div>"+html, html);
			  if(ativaFadeDescr){
			  	$(this).find(classe_descr).css({opacity: 0.0, width: wimg});
			  } else {
			  	$(this).find(classe_descr).css({width: wimg});
			  }
		  }
      }
	  if(ativaFadeDescr){
		  $(this).hover(function(){
			$(this).find(classe_descr).animate({opacity: 1.0}, 1000);
		  },function(){
			$(this).find(classe_descr).animate({opacity: 0.0}, 1000);
		  });
	  }
    }
	
	if(ativaFadeNav){
	  $(this).hover(function(){
		$(container).find(id_nav).stop().animate({opacity: 1.0}, 1000);
	  },function(){
		$(container).find(id_nav).stop().animate({opacity: 0.0}, 1000);
	  });
	  $(id_nav).hover(function(){
		$(container).find(id_nav).stop().animate({opacity: 1.0}, 1000);
	  },function(){
		$(container).find(id_nav).stop().animate({opacity: 0.0}, 1000);
	  });
	}

	if(ativaFadeProxAnt){
	  $(this).hover(function(){
		$(id_btprox).stop().animate({opacity: 1.0}, 1000);
		$(id_btant).stop().animate({opacity: 1.0}, 1000);
	  },function(){
		$(id_btprox).stop().animate({opacity: 0.0}, 1000);
		$(id_btant).stop().animate({opacity: 0.0}, 1000);
	  });
	  $(id_btprox).hover(function(){
		$(id_btprox).stop().animate({opacity: 1.0}, 1000);
		$(id_btant).stop().animate({opacity: 1.0}, 1000);
	  },function(){
		$(id_btprox).stop().animate({opacity: 0.0}, 1000);
		$(id_btant).stop().animate({opacity: 0.0}, 1000);
	  });
	  $(id_btant).hover(function(){
		$(id_btprox).stop().animate({opacity: 1.0}, 1000);
		$(id_btant).stop().animate({opacity: 1.0}, 1000);
	  },function(){
		$(id_btprox).stop().animate({opacity: 0.0}, 1000);
		$(id_btant).stop().animate({opacity: 0.0}, 1000);
	  });
	}

  });
  
  if(modoAnima == "fade"){
    $(seletor).animate({opacity: 1.0}, 1000);
    var mlie = "-"+(largMediaImgs/2)+"px";
    $(seletor).css({left: "50%", marginLeft: mlie});
  }
  
  var animafade = function(atual,seletor1,seletor2,seletor3){
    var wimg1 = $(seletor1).find("img").outerWidth();
    if(wimg1 == 0 || wimg1 == null || wimg1 == ""){
      wimg1 = largMediaImgs;
    }
    var ml1 = "-"+(wimg1/2)+"px";
    $(seletor1).css({left: "50%", marginLeft: ml1});

    $(seletor1).css({zIndex: 10});
    $(seletor1).animate({opacity: 1.0}, 1000, function(){
      $(seletor1).addClass(cAtual);
    });

    var wimg2 = $(seletor2).find("img").outerWidth();
    if(wimg2 == 0 || wimg2 == null || wimg2 == ""){
      wimg2 = largMediaImgs;
    }
    var ml2 = "-"+(wimg2/2)+"px";
    $(seletor2).css({left: "50%", marginLeft: ml2});
    
    $(seletor2).css({zIndex: 9});
    $(seletor2).delay(1000).animate({opacity: 0.0}, 1000, function(){
      $(seletor2).removeClass(cAtual);
      $(seletor2).addClass(cSeg);
    });
    $(seletor3).removeClass(cSeg);
    $(seletor3).css({zIndex: 8});
    
    var btAtual = container+" "+id_nav+" a."+cBtAtual;
    $(btAtual).removeClass(cBtAtual);
    var botaoclicado = container+" "+id_nav+" a.bt"+atual;
    $(botaoclicado).addClass(cBtAtual);
  }
  
  var animarotate = function(atual,seletor1,seletor2,seletor3){
	if(modoAnima == "rotateInf" && vendo == 0 && ant == (compr - 1)){
		var position = $(seletor2).position();
		var posl = "-"+(position.left+largMediaImgs)+"px";
		$(id_bc).animate({left: posl}, 1000, function(){
		  var position2 = $(seletor1).position();
		  var pos2l = "-"+(position2.left)+"px";
		  $(id_bc).css({left: pos2l});
		  $(seletor1).addClass(cAtual);
		  $(seletor2).removeClass(cAtual);
		  $(seletor2).addClass(cSeg);
		  $(seletor3).removeClass(cSeg);
		});
	} else if(modoAnima == "rotateInf" && vendo == (compr - 1) && ant == 0){
		var position = $(seletor2).position();
		var posl = "-"+(position.left-largMediaImgs)+"px";
		$(id_bc).animate({left: posl}, 1000, function(){
		  var position2 = $(seletor1).position();
		  var pos2l = "-"+(position2.left)+"px";
		  $(id_bc).css({left: pos2l});
		  $(seletor1).addClass(cAtual);
		  $(seletor2).removeClass(cAtual);
		  $(seletor2).addClass(cSeg);
		  $(seletor3).removeClass(cSeg);
		});
	} else {
		var position = $(seletor1).position();
		var posl = "-"+position.left+"px";
		$(id_bc).animate({left: posl}, 1000, function(){
		  $(seletor1).addClass(cAtual);
		  $(seletor2).removeClass(cAtual);
		  $(seletor2).addClass(cSeg);
		  $(seletor3).removeClass(cSeg);
		});
	}
	
    var btAtual = container+" "+id_nav+" a."+cBtAtual;
    $(btAtual).removeClass(cBtAtual);
    var botaoclicado = container+" "+id_nav+" a.bt"+atual;
    $(botaoclicado).addClass(cBtAtual);
  }
  
  var passa = function(){
    if(vendo >= (compr - 1)){vendo = 0;} else {vendo++;}            
    if(vendo == 0){
	if(ant != (compr - 1)){
	    var seletor2a = local+"."+prefixo+ant;
	    $(seletor2a).removeClass(cSeg);
	    ant = (compr - 1);
	}
	if(aant != (ant - 1)){aant = (ant - 1);}
    } else if(vendo == 1){
	if(ant != 0){
	    var seletor2a = local+"."+prefixo+ant;
	    $(seletor2a).removeClass(cSeg);
	    ant = 0;
	}
	if(aant != (compr - 1)){aant = (compr - 1);}                
    } else {
	if(ant != (vendo - 1)){
	    var seletor2a = local+"."+prefixo+ant;
	    $(seletor2a).removeClass(cSeg);
	    ant = (vendo - 1);
	}
	if(aant != (ant - 1)){aant = (ant - 1);}
    }

    if(modoAnima == "fade"){
	  var seletor1 = local+"."+prefixo+vendo;
	  var seletor2 = local+"."+prefixo+ant;
	  var seletor3 = local+"."+prefixo+aant;
      animafade(vendo,seletor1,seletor2,seletor3);
    } else if(modoAnima == "rotate" || modoAnima == "rotateInf"){
	  var seletor1 = local2+"."+prefixo+vendo;
	  var seletor2 = local2+"."+prefixo+ant;
	  var seletor3 = local2+"."+prefixo+aant;
      animarotate(vendo,seletor1,seletor2,seletor3);
	}
  }
  
  var troca = function(proximo){
    clearInterval(intervalo);
    aant = ant;
    ant = vendo;
    vendo = proximo;
	
    if(modoAnima == "fade"){
	  var seletor1 = local+"."+prefixo+vendo;
	  var seletor2 = local+"."+prefixo+ant;
	  var seletor3 = local+"."+prefixo+aant;
      animafade(vendo,seletor1,seletor2,seletor3);
    } else if(modoAnima == "rotate" || modoAnima == "rotateInf"){
	  var seletor1 = local2+"."+prefixo+vendo;
	  var seletor2 = local2+"."+prefixo+ant;
	  var seletor3 = local2+"."+prefixo+aant;
      animarotate(vendo,seletor1,seletor2,seletor3);
	}
    intervalo = setInterval(passa, tempo*1000);
  }
  
  var botaoclicado = container+" "+id_nav+" a";
  $(botaoclicado).click(function(){
    if(!($(this).is("."+cBtAtual))){
      var bt = container+" "+id_nav+" a."+cBtAtual;
      $(bt).removeClass(cBtAtual);
      var classeBt = $(this).attr("class");
      var classeNum = classeBt.match(/[0-9]+/g);
      troca(classeNum);
      return false;
    }
  });
  
  $(id_btprox).click(function(){
    if(vendo == (compr - 1)){
      troca(0);
    } else {
      troca(vendo + 1);
    }
    return false;
  });
  
  $(id_btant).click(function(){
    if(vendo == 0){
      troca(compr - 1);
    } else {
      troca(vendo - 1);
    }
    return false;
  });
	    
  var intervalo = setInterval(passa, tempo*1000);
}
