/**
 * @author    mutexkid
 * @version   1.0
 * @copyright copyright (c)2009 Josh Skeen
 * @website   http://www.joshskeen.com
 * @license   MIT License : http://en.wikipedia.org/wiki/MIT_License
 * 			  requires jquery 1.3+
 */
jQuery.noConflict();
;(function(jQuery) {
	var elem, opts, titlebar, intervalID, numberSlides = 0, currentSlide = 0, slides = Array();

jQuery.fn.simpleslide = function(settings) {
	jQuerythis = jQuery(this);
	settings = jQuery.extend({}, jQuery.fn.simpleslide.defaults, settings);
	__initialize();

	function __initialize(){
		opts = settings;
		currentSlide = opts.startingSlide;
		var widthSettings = {
				'width'		:	opts.frameWidth  + 'px',
				'height'	:	opts.frameHeight + 'px'
			};
		var widthSettingsText = {
				'width'		:	(opts.frameWidth - 8)  + 'px',
				'height'	:	(opts.titlebarHeight - 4)  + 'px'
			};
		
		//wrap slides in simpleslide div
		jQuerythis.wrapAll('<div id="jquery_simpleslide"></div>');
		slides = jQuerythis.children("img");
		numberSlides = jQuerythis.children("img").length - 1;
		jQuerythis.children("img").addClass('simpleslide_slide');
		//set width of slides and slideshow area
		jQuery("#jquery_simpleslide").css(widthSettings);
		jQuery("#jquery_simpleslide .simpleslide_slide").css(widthSettings);
		jQuery("jquery_simpleslide")
		if(opts.labels == true){
			var titlebar = '<div id="simpleslide_titlebar"><div class="simpleslide_title_bg"></div><div class="simpleslide_title_copy">foo</div></div>';
			jQuery("#jquery_simpleslide").append(titlebar);
			jQuery("#jquery_simpleslide #simpleslide_titlebar").css(widthSettings).css("height", opts.titlebarHeight + "px");
			jQuery("#jquery_simpleslide .simpleslide_title_bg").css(widthSettings).css("height", opts.titlebarHeight + "px");
			jQuery("#jquery_simpleslide .simpleslide_title_copy").css(widthSettingsText);
			var title_position = (opts.labelPosition == 'bottom' ? (opts.frameHeight - opts.titlebarHeight) : 0);
			jQuery("#jquery_simpleslide #simpleslide_titlebar").css("margin-top", title_position + "px");
		}
		__setup();
	}
	
	function __setup(){
			jQuery('#jquery_simpleslide .simpleslide_slide').css("z-index", "3");
			jQuery(slides[currentSlide]).show();
			jQuery(slides[currentSlide]).css("z-index", "10");
			jQuery.fn.simpleslide.setTitle(jQuery(slides[currentSlide]).attr("title"));
			__start();
	}
	
	function __start(){
		setInterval('jQuery.fn.simpleslide.animateSlide()', opts.timePerSlide);
	}
};

jQuery.fn.simpleslide.setTitle = function(title){
	if(opts.labels == true){
		jQuery('#jquery_simpleslide .simpleslide_title_copy').text(title);
	}
}

jQuery.fn.simpleslide.animateSlide = function(settings) {
	var currentSlideStyle  = {
			'opacity'		:	'0',
			'z-index'		:	'10'
		};
	var backgroundSlidesStyle  = {
			'opacity'		:	'1',
			'z-index'		:	'3'
		};			

	currentSlide = (currentSlide < numberSlides ? currentSlide += 1 : 0);
	var elem = jQuery(slides[currentSlide]);
	jQuery.fn.simpleslide.setTitle(jQuery(slides[currentSlide]).attr("title"));

	if(currentSlide == 0){
		jQuery('#jquery_simpleslide .simpleslide_slide').css(backgroundSlidesStyle);
		jQuery(elem).css(currentSlideStyle).animate({opacity: 1}, 
												opts.transitionTime, 
												opts.transitionType
											   );
	}else
	{
		jQuery(elem).css(currentSlideStyle).animate({opacity: 1},
												opts.transitionTime, 
												opts.transitionType, 
												function(){
															jQuery('#jquery_simpleslide .simpleslide_slide').css('z-index', '3');
															jQuery(elem).css('z-index', '10');
														}
											   );
	}
}

jQuery.fn.simpleslide.defaults = {
		startingSlide	    :   0,			//first slide to feature
		frameWidth			:	320,		//width of slideshow		
		frameHeight			:	260,		//height of slideshow
		titlebarHeight	    :   20,			//height of titlebar
		labels			    :   false,		//true or false
		labelPosition		:   'bottom', 	// 'top' or 'bottom'
		timePerSlide		:	7000,		//time per slide to feature
		transitionTime		:	3000,		//time per transition
		transitionType		:	"swing"		//transition type
	};

})(jQuery);
