(function($) {
	$.fn.SlideShow = function(p_options) {
		
		m_totalSlides = ($("#carouselMarque .marqueSlide").length);
				
		$('#ctrlSlide-Prev').click(function(){ previousSlide() });
		$('#ctrlSlide-Pause').click(function(){ pauseSlide() });
		$('#ctrlSlide-Next').click(function(){ nextSlide() });
		
		$('#ctrlSlide-1').click(function(){ showSlide(1); });
		$('#ctrlSlide-2').click(function(){ showSlide(2); });
		$('#ctrlSlide-3').click(function(){ showSlide(3); });
		$('#ctrlSlide-4').click(function(){ showSlide(4); });
		$('#ctrlSlide-5').click(function(){ showSlide(5); });
			
		m_curSlideID = 1;
		m_curSlide = null;
		
		m_interval = 0;
		m_pausedState = false;

		init();
	}
	  
 	function init(){
		
		if(jQuery.browser.msie && jQuery.browser.version == 6){
			// Add Support For PNG Files and IE 6
			fixPNG();

			var marqueList = $("#slide-1 ~ div");

			for(i = 0; i < marqueList.length; i++){
				$("#" + marqueList[i].id).css('display','none');
			}
		}
		
		
		$("#ctrlSlide-" + m_curSlideID).attr("src", "img/home/marquee/nav/" + m_curSlideID + "-on.jpg");		
		m_curSlide = $("#slide-" + m_curSlideID);				
		m_curSlide.css("display", "block");
		
		setTimer();
	}
	
	function changeSlide(){
		var newSlideID = (m_curSlideID >= m_totalSlides) ? 1 : (m_curSlideID + 1)
		showSlide(newSlideID);
	}

	function showSlide(p_newSlideID){

		clearTimeout(m_interval);

		$("#ctrlSlide-" + m_curSlideID).attr("src", "img/home/marquee/nav/" + m_curSlideID + "-off.jpg");		
		m_curSlide.css("display", "none");


		$("#ctrlSlide-" + p_newSlideID).attr("src", "img/home/marquee/nav/" + p_newSlideID + "-on.jpg");		
		m_curSlide = $("#slide-" + p_newSlideID);				
		m_curSlide.css("display", "block");

		m_curSlideID = p_newSlideID;
		
		setTimer();
	}
		
	function nextSlide(){		
		var newSlideID = (this.m_curSlideID >= m_totalSlides) ? 1 : (this.m_curSlideID + 1);
		showSlide(newSlideID);
	}
	
	function previousSlide(){	
		var newSlideID = (m_curSlideID == 1) ? m_totalSlides : (m_curSlideID - 1);
		showSlide(newSlideID);
	}
	
	function setTimer(){
		m_interval = setTimeout(function () { changeSlide(); }, 5000);	
	}
	
	function pauseSlide(){
		if(m_pausedState){
			setTimer();
			m_pausedState = false;
		}else{
			clearTimeout(m_interval);
			m_pausedState = true;
		}
	}
})(jQuery);

$(function() {
	$("#carouselMarque").SlideShow();
});