YUI({combine: true, timeout: 10000}).use("node",
function(Y) {
	var spotPaused = false;
	var spotNum = 0;
   var numSpots = 0;

	var displaySpotlight = function(spotID) {
		spotNum = spotID;
		var spotlights = Y.all('.slide');
		spotlights.setStyle('display', 'none');
		var selectedSpotlight = Y.one('#slide' + spotID);
		selectedSpotlight.setStyle('display', 'block');
	}

	var pauseSpotlight = function(e) {
      if (spotPaused) {
         spotPaused = false;
         spotNum = spotNum % numSpots;
         displaySpotlight(spotNum);
         this.removeClass('spotlight_paused');
      } else {
         spotPaused = true;
         this.addClass('spotlight_paused');
      }
	}

	var previousSpotlight = function(e) {
		var spotlightControl = Y.one('#spotlight_control');
      spotPaused = true;
      displaySpotlight((spotNum + numSpots - 1) % numSpots);
      spotlightControl.addClass('spotlight_paused');
	}

   var nextSpotlight = function(e) {
		var spotlightControl = Y.one('#spotlight_control');
      spotPaused = true;
      displaySpotlight((spotNum + 1) % numSpots);
      spotlightControl.addClass('spotlight_paused');
	}

	var interceptLink = function(e) {
		e.preventDefault();
	}

	var rotateSpotlight = function() {
		if (!spotPaused) {
			spotNum = (spotNum + 1) % numSpots;
			displaySpotlight(spotNum);
		}
	}

	var loadSpotlight = function(e) {
      numSpots = Y.all('.slide').size();
		Y.on("click", interceptLink, ".spot-btn");
      Y.on("click", pauseSpotlight, "#spotlight_control");
      Y.on("click", previousSpotlight, "#spotlight_previous");
      Y.on("click", nextSpotlight, "#spotlight_next");
		setInterval(rotateSpotlight, 10000);
	}

 Y.on("domready", loadSpotlight);
});
