$(document).ready(function(){
  var cycle_height = 459, 
      slide_height,
      tall_scroll = function(e, slide_height, cycle_height){
        if(slide_height > cycle_height){
          $(e).animate({marginTop:(slide_height-cycle_height)*-1}, 5000, 'easeinout');
        }
      };
  $('#cycle img').first().load(function(e){
    $('#cycle').cycle({
        fx:     'scrollLeft',
        easing: 'easeinout',
        timeout: 5000,
        speed:  1200,
        pager:  '#pager',
        height: cycle_height,
        width: 960,
        slideResize: 0,
        pagerAnchorBuilder: function(idx, slide) {
            // return sel string for existing anchor
            return '#pager li:eq(' + (idx) + ') a';
        },
        before: function(currSlideElement, nextSlideElement, options, forwardFlag) {
          $('#cycle *').stop();
        },
        after: function(currSlideElement, nextSlideElement, options, forwardFlag) {
          $('#cycle *').css('marginTop', 0);
          $(currSlideElement).stop();
          slide_height = $(nextSlideElement).is('img') ? $(nextSlideElement).height() : $('img', nextSlideElement).height();
          tall_scroll(this, slide_height, cycle_height);
        },
        timeoutFn: function(currSlideElement, nextSlideElement, options, forwardFlag) {
          if(nextSlideElement == 1){
            slide_height = $('#cycle img').first().height();
          }else{
            slide_height = $(nextSlideElement).height();
          }
          return (slide_height > cycle_height) ? 8000 : 5000;
        }
    });
  })
});

