var my_carousel ;

$().ready(function() {
  
  if(!$.browser.msie || $.browser.version != '6.0' ){
    
    // content slide in
    
    if ($('#shell:not(.team) #content_wrapper #content').length  ){
    
      $('#shell:not(.team) #content_wrapper #content').css('margin-left', 0 - $('#content_wrapper').width() ).delay(200).animate({'margin-left' : '0'}, 450, 'easeInOutCubic', function(){});
    
    }
    
    // team slide in
    
    if ($('ul#team li div.li_inner').length ){
    
      $('ul#team li div.li_inner').css('margin-left', 0 - $('ul#team li').width() );
      $('ul#team li div.li_inner').each(function(index, item){
        $(item).delay(200 * (index + 1)).animate({'margin-left' : '0'}, 450, 'easeInOutCubic', function(){});
      });
    
    }
    
  }
  
  /* cycle */
  
  if ($('ul#background_images *').length > 1 ){

    $('ul#background_images').cycle({
      random: 1,
      timeout: 4000,
      speed: 1000
    });
  
  }
  
  // case studies jcarousel
  
  if ($('ul#casestudies').length ){
  
    $('ul#casestudies').jcarousel({
      buttonPrevHTML: '<a href="#" title="Previous">&lt;</a>',
      buttonNextHTML: '<a href="#" title="Next">&gt;</a>',
      scroll: 1,
      wrap: 'both',
      auto: 0,
      animation: 450,
      easing: 'easeInOutCubic'
    });
  
  }
    
  // case study_single jcarousel
  
  if ($('ul#casestudy_thumbnails').length && $('ul#casestudy_images').length ){
  
    $('ul#casestudy_thumbnails li').each(function(idx) {
      $(this).data('index', (++idx));
      $(this).data('visiable', 0);
    });   
    
    $('ul#casestudy_images li').each(function(idx) {
      $(this).data('index', (++idx));
    });  
    
    $('ul#casestudy_thumbnails').jcarousel({
        buttonPrevHTML: '<a href="#" title="Previous">&lt;</a>',
        buttonNextHTML: '<a href="#" title="Next">&gt;</a>',
        
        initCallback: function(carousel, state){
          my_carousel = carousel;
        },
        /*
        itemFirstOutCallback: function(carousel, item, idx, state) {
          if($(item).hasClass('on')){
            $('ul#casestudy_images').cycle('next');
          }
        },
        itemLastOutCallback: function(carousel, item, idx, state) {
          if($(item).hasClass('on')){
            $('ul#casestudy_images').cycle('prev');
          }
        },
        */
        itemVisibleInCallback: {
          onBeforeAnimation: function(carousel, item, idx, state){},
          onAfterAnimation: function(carousel, item, idx, state){
            $(item).data('visiable', 1);
            
            if(idx ==  $('ul#casestudy_thumbnails li').length ){
              console.log(carousel.options);
              carousel.options.scroll = 0;
              my_carousel.options.scroll = 0;
            }
            else{
              carousel.options.scroll = 1;
              my_carousel.options.scroll = 1;
            }
            
          }
        },
        itemVisibleOutCallback: {
          onBeforeAnimation: function(carousel, item, idx, state){},
          onAfterAnimation: function(carousel, item, idx, state){
            $(item).data('visiable', 0);
          }
        },
        
        scroll: 1,
        wrap: 'both',
        auto: 0,
        animation: 450,
        easing: 'easeInOutCubic'
    });
      
    $('ul#casestudy_images').cycle({
        timeout: 3000,
        speed: 650,
        fx: 'fade',
        pager:  '#casestudy_thumbnails',
        pagerAnchorBuilder: function(idx, slide) { 
            // return selector string for existing anchor 
            return '#casestudy_thumbnails li:eq(' + idx + ') a'; 
        },
        prev: '.jcarousel-prev',
        next: '.jcarousel-next',
        before: function(currSlideElement, nextSlideElement, options, forwardFlag){
          
          index_current = $(currSlideElement).data('index');
          index_next = $(nextSlideElement).data('index');
          
          visiable_current = $('ul#casestudy_thumbnails li:nth-child('+index_current+')').data('visiable');
          visiable_next = $('ul#casestudy_thumbnails li:nth-child('+index_next+')').data('visiable');
          visiable_first = $('ul#casestudy_thumbnails li:first-child').data('visiable');
          visiable_last = $('ul#casestudy_thumbnails li:last-child').data('visiable');
          
          total = $('ul#casestudy_images li').length;
          
          if( ( (index_next > index_current)  && !visiable_last) || ( index_current == total && index_next == 1 ) ){
            my_carousel.next();
          }
          else if( ( (index_next < index_current ) && !visiable_first ) || ( index_current == 1 && index_next == total ) ){
            my_carousel.prev();
          } 
        },
  
        activePagerClass: 'on',
        easing: 'easeInOutCubic',
        delay: 1000,
        pauseOnPagerHover: true,
        pause: true 
    });
  
  }

//END of $().ready(function() {
});
