$(document).ready(function(){

	slideShow.init();

});


var slideShow = {

  currentPosition : Number(0),
  paused: false,
  slideWidth : 920,
  numberOfSlides : 0,
  timer: 0,
  timeOut: 7000,

  init: function() {

    var slides = $('.slide');
  	slideShow.numberOfSlides = slides.length;

	// Remove scrollbar in JS
	$('#slidesContainer').css('overflow', 'hidden');

		// Wrap all .slides with #slideInner div
		slides
			.wrapAll('<div id="slideInner"></div>')
			// Float left to display horizontally, readjust .slides width
			.css({
				'float' : 'left',
				'width' : slideShow.slideWidth
			});

	// Set #slideInner width equal to total width of all slides
	$('#slideInner').css('width', slideShow.slideWidth * slideShow.numberOfSlides);

	$('#slidesContainer').append('<div id="paused_icon">Click to unpause</div>');

	// Insert navigation controls in the DOM
	var slideshtml = '<ul id="slideControls">';
	for (var i = 0;  i < slideShow.numberOfSlides; i++) {
		slideshtml += '<li class="control" id="slide-'+i+'"></li>';
	}
	slideshtml += '<li class="pause" id="slide_pause">Pause</li></ul>';
	$('#slideshow').prepend(slideshtml);

	//set the first control to active
	$('#slide-'+slideShow.currentPosition).addClass('active');

    $('.control').click(function() {
		var id = $(this).attr('id');
		id = id.replace('slide-', '');

    	slideShow.slide(id);

    });


	$('.slide_image').click(function() {
		slideShow.togglePause();
	});

	$('#slide_pause').click(function() {
		slideShow.togglePause();
	});

	$('#paused_icon').click(function() {
		slideShow.togglePause();
	});

    slideShow.timer = window.setTimeout("slideShow.auto()", slideShow.timeOut);

  },

  slide: function(id) {

  		if(id >= slideShow.numberOfSlides) {
 			id = 0;
  		}

		  // Move slideInner using margin-left
		  $('#slideInner').animate({
		    'marginLeft' : slideShow.slideWidth*(-id)
		  });

		  $('#slide-'+id).addClass('active');
		  $('#slide-'+slideShow.currentPosition).removeClass('active');

		  slideShow.currentPosition = id;

		  clearTimeout(slideShow.timer);
		  slideShow.timer = window.setTimeout("slideShow.auto()", slideShow.timeOut);

  },


  auto: function() {

	if(this.paused)
	{
		return;
	}

  	var id = Number(slideShow.currentPosition) + 1;

  	slideShow.slide(id);

  },


  togglePause: function() {

  	if(this.paused === true)
  	{
  		this.paused = false;

  		$('#slide_pause').html('Pause');
  		$('#paused_icon').hide();

  		clearTimeout(slideShow.timer);
		slideShow.timer = window.setTimeout("slideShow.auto()", slideShow.timeOut);
	}
	else
	{
		this.paused = true;

  		$('#slide_pause').html('Unpause');
  		$('#paused_icon').show();

		clearTimeout(slideShow.timer);
 		slideShow.timer = window.setTimeout("slideShow.auto()", slideShow.timeOut);

	}



  }


}


