var timeout;
var timeout2;
var curIdx = 0;
$(document).ready(function(){
  $('.view-slideshowpro-gallery .views-row:first').fadeIn(2000); 
  $('.view-slideshowpro-gallery .views-row:first .texts').animate({top:50},1500); 
  initAnimate();
  generateControl();
});

function animate(cls,dir,num){
  var idx=$(cls).index($(cls+':visible'));
  $(cls+':eq('+curIdx+')').fadeOut(1500);
  $(cls+' .texts:eq('+curIdx+')').animate({top:-336},1000);
  $('.jcycle-control ul li.activeSlide').removeClass('activeSlide');


  if(dir=='fwd'){
    var next = idx+1;
    curIdx++;
  }
  else {
    var next = idx-1;
    curIdx--;
  }
  if(num != 'auto'){
    next=num;
    curIdx = num;
  }
  
  if(curIdx==$(cls).length) curIdx = 0;
  else if(curIdx < 0) curIdx = $(cls).length-1;

  $('.jcycle-control ul li:eq('+curIdx+')').addClass('activeSlide');
  $(cls+':eq('+curIdx+')').fadeIn('1500');
  timeout = setTimeout(function(){
   $(cls+':eq('+curIdx+') .texts').animate({top:50},1500);
   initAnimate();
  },1000);
  	
}

function initAnimate(){
  timeout =  setTimeout(function(){
                  animate('.view-slideshowpro-gallery .views-row','fwd','auto');
                },8000);
}

function generateControl(){
  
  $('.cycle-next').click(function(){
    clearTimeout(timeout);
    clearTimeout(timeout2);
    animate('.view-slideshowpro-gallery .views-row','fwd','auto');
  });
  $('.cycle-prev').click(function(){
    clearTimeout(timeout);
    clearTimeout(timeout2);
    animate('.view-slideshowpro-gallery .views-row','bkw','auto');
  });
  $('.jcycle-control .cycle-prev').after('<ul></ul>');
  $('.jcycle-control .cycle-next').after('<div class="clear"></div>');
  var len = $('.view-slideshowpro-gallery .views-row').length;
  for(i=0;i<len;i++){
   $('.jcycle-control ul').append('<li><a href="#"></a></li>'); 
   $('.jcycle-control ul li:last a').bind('click',function(){
     var el = $(this);
     jumpSlide(el);
   });
  }
  var num = $('.jcycle-control ul li').length;
  var w = 0;
  $('.jcycle-control ul li').each(function(){
    w += $(this).outerWidth(true);
  });
  $('.jcycle-control ul').css('width',w);
  $('.jcycle-control ul li:first').addClass('activeSlide');
}

function jumpSlide(el){
  var idx = $('.jcycle-control ul li a').index(el);
  clearTimeout(timeout);
  clearTimeout(timeout2);
  animate('.view-slideshowpro-gallery .views-row','fwd',idx);
}


