var enableAutoPagerScroll = true;

$(document).ready(function(){
	$('#sidebar ul li a').click(function () {showGallery(this)});

	var myFile = document.location.toString();
	if (myFile.match('#')) { // the URL contains an anchor
  	// click the navigation item corresponding to the anchor
  	var myAnchor = '#' + myFile.split('#')[1];
  	$('#sidebar ul li a').each(function(i) {
  		var theAnchor = "#" + $(this).attr('href').split('#')[1];
  		if (theAnchor == myAnchor) {
  			$(this).click();
  		}
  	});
	} else {
  	// click the first navigation item
  	$('#sidebar ul li:first a').click();
	}
	
	$('#gallery-prev').click(prevClick);
	$('#gallery-next').click(nextClick);
});

function pagerAnchorBuilder(idx, slide) { 
  return '<a href="#"><img src="' + slide.src + '" /></a>'; 
}

function afterCycleCallback (currSlideElement, nextSlideElement, options, forwardFlag) {
  var currentShowID = $(options.elements[0]).parent().attr('id');
  var pagerLeft = Math.floor((options.currSlide + 1) / 4) * -453;
  if (enableAutoPagerScroll) {
    $('#' + currentShowID + '-pager.pager').animate({'left': pagerLeft}, 500);
  } 
}

function showGallery(theGallery) {
	var myAnchor = $(theGallery).attr('href').split('#')[1];
	$('.gallery').cycle('stop').hide();
	$('.pager').remove();
	
	$('#pager-wrapper').html('<div id="' + myAnchor + '-pager" class="pager"></div>');
	
	$("#" + myAnchor).show().cycle({
    'pager': '#' + myAnchor + '-pager.pager',
    'pagerAnchorBuilder': pagerAnchorBuilder,
    'pagerClick': thePagerEvent,
    'before': afterCycleCallback,
    'startingSlide': 0
  });
}

function prevClick() {
  enableAutoPagerScroll = false;
  var currentPos = $('.pager').css('left').replace('px', '') * 1;
  var count = $('.pager').children().size();
  var remainder = currentPos % -453;
  if (Math.floor(currentPos /-453) - 1 >= 0) {
    $('.pager').animate({'left': (Math.floor(currentPos/-453) - 1) * -453}, 500);
  }
}

function nextClick() {
  enableAutoPagerScroll = false;
  var currentPos = $('.pager').css('left').replace('px', '') * 1;
  var count = $('.pager').children().size();
  var remainder = currentPos % -453;
  if ((currentPos / -453) + 1 <= Math.floor(count / 4) - 1) {
    $('.pager').animate({'left': (Math.floor(currentPos / -453) + 1) * -453}, 500);
  }
}

function thePagerEvent () {
  enableAutoPagerScroll = true;
}