var rotatorElement = '#rotator-items';
window.ImagesToLoad = 0;
window.ImagesLoaded = 0;
window.RotatorLoaded = false;

function onRotatorImageLoad() {
	window.ImagesLoaded++;
	if (window.ImagesLoaded >= window.ImagesToLoad && window.RotatorLoaded == false)
		initRotator();
}

function initRotator() {	
	window.RotatorLoaded = true;
	
	$("#nav").css("display", "block");
	
  $(rotatorElement).cycle({
		fx: 'fade',
		speed: 2000,
		timeout: 4000,
    slideExpr: '.rotator-item',
    random: false,
		before: onBefore,
		pager: '#nav-items',
		pagerAnchorBuilder: pagerFactory,
    fastOnEvent: 100
	});
	
	$("#nav-items").show();

  function pagerFactory(idx, slide) {
		return '<div><a href="#">'+(idx+1)+'</a></div>';
	};
  
  function setSlideTimeout(curr,next,opts,fwd) {
    currentClass = $(next).attr('class');
    if (currentClass != null && currentClass != "" && isNumeric(currentClass)) {
      return parseFloat(currentClass);
    } else {
      return opts.timeout;
    }
  }

  function isNumeric(data) {
    return parseFloat(data)==data;
  }

  function pauseRotator() {
    $(rotatorElement).cycle('pause');
    // $('#pause-button').hide();
    // $('#play-button').show();
  }
  
  function resumeRotator() {
    $(rotatorElement).cycle('resume', true);
    // $('#pause-button').show();
    // $('#play-button').hide();
  }
  
  $('#pause-button > img').click(function() { 
		// pauseRotator();
	});
	
	$('#play-button > img').click(function() { 
		// resumeRotator(); 
	});  

	$('#play-button').hide();
  $('#pause-button').hide();
  $('#next-button').hide();
  $('#prev-button').hide();
		
}

$(function() {
	window.ImagesToLoad = $(rotatorElement + " > div").size();
 	if (window.ImagesLoaded >= window.ImagesToLoad && window.RotatorLoaded == false)
		initRotator();
});

var stack = [];

// add images to slideshow 
function onBefore(curr, next, opts) {
	if (opts.addSlide) {
		while (stack.length) {
			ele = stack.pop();
			opts.addSlide(ele);
		}
	}
}; 

$(window).load(function(){
	$(".rotator-item-toload").each(function(item, index){
		if (item >= 0) {
			jItem = $(this);
			jImage = jItem.find("img");
			if (jImage) {
				window.ImagesToLoad++;
				(function(ele, image){
					var imageLoader = new Image();
					imageLoader.onload = function() {
						ele.attr("src", image);
						stack.push(ele.parent().parent());
					}
					imageLoader.src = image;
					imageLoader.style.display = "none";
					document.body.appendChild(imageLoader);
				})(jImage, jImage.attr("title"));
	  		jImage.attr("src", jImage.attr("title"));
	  	}
		}
	});
});