(function($) {
	var S = {
		settings: {
			selectorPath: '.slideshow-selector',
			ctnSlideClassPrefix: 'slide-',
			descPath: '.slideshow-desc'
		},
		
		Ctn: null,
		
		Selector: null,
		
		lastSlideNo: 0,
		
		clock: null,
		
		numSlides: 0,
		
		init: function(path, no, interval)
		{
			S.Ctn = $(path);
			
			S.Selector = $(S.settings.selectorPath, S.Ctn);
			
			S.Ctn.addClass(S.settings.ctnSlideClassPrefix+no);
			S.settings.lastSlideNo = parseInt(no);
			
			S.numSlides = $('li', S.Selector).size();
			
			$('li[slide='+no+'] > a', S.Selector).addClass('current');
			
			$('li', S.Selector).each(function(){
				var slideNo = $(this).attr('slide');
				
				$('a', this).click(function(){
					if(S.settings.lastSlideNo)
					{
						S.stopInterval();
						S.showSlide(slideNo)
					}
					//ctn.attr('id', S.settings.ctnIdPrefix+slideNo);
					return false;	
				});
			});
			
			if(interval)
			{
				S.startInterval(interval);
			}
		},
		
		startInterval: function(interval){
			S.clock = setInterval(function(){
				var toShow = S.settings.lastSlideNo+1;
				if(toShow > S.numSlides)
					toShow = 1;
				S.showSlide(toShow);
			}, parseInt(interval)*1000)
		},
		
		stopInterval: function()
		{
			clearInterval(S.clock);
		},
		
		showSlide: function(no)
		{
			S.Ctn.animate({opacity: 0.5}, 400, null, function(){
				S.Ctn.removeClass(S.settings.ctnSlideClassPrefix+S.settings.lastSlideNo);
				S.Ctn.addClass(S.settings.ctnSlideClassPrefix+no);
				S.settings.lastSlideNo = no;
				
				$('li > a', S.Selector).removeClass('current');
				$('li[slide='+no+'] > a', S.Selector).addClass('current');
			}).animate({opacity: 1}, 400);
		}
		
	};
	window.SlideShow = S;
})(jQuery);
	