; (function ($) {

	// ½½¶óÀÌµå ¼î ÇÃ·¯±×ÀÎ
	// »ç¿ë ¹ý
	// $('#slidesContainer').slideShow({currentPosition:0, slideWidth: 260});
	//				==> {currentPosition:0, slideWidth: 260} ³ÖÁö ¾ÊÀ» °æ¿ì ±âº» °ª

	$.fn.slideShow = function(options) {

		var opts = jQuery.extend({}, jQuery.fn.slideShow.defaults, options);
		 
		return this.each(function() {
	
			/* ½½¶óÀÌµå ±¸¼º */
			var $slides = $('.'+opts.slideId);				//½½¶óÀÌµå ÀÚ½Äµé °¡Á®¿À±â			
			var numberOfSlides = $slides.length;		//½½¶óÀÌµå ÀÚ½Äµé °¹¼ö			
			var $leftBtn = $('#'+opts.leftBtnId);		//½½¶óÀÌµå ÀÌÀü ¹öÆ°			
			var $rigthBtn = $('#'+opts.rigthBtnId);	//½½¶óÀÌµå ´ÙÀ½ ¹öÆ°
			var strLoopWay = 'next';							//·Ñ¸µ ¹æÇâ
			/* ½½¶óÀÌµå ±¸¼º */

			/* ÀÚµ¿·Ñ¸µ Á¤º¸ */			
			var strAutoPlay = '';									//¹Ýº¹ Interval Á¤º¸	
			var $AutoDiv = $('#'+opts.AutoDivId);	//¸¶¿ì½º ¿À¹ö/ ¾Æ¿ô½Ã ¹Ýº¹ ¸ØÃß°í Á¦½ÃÀÛÇÒ div 
			/* ÀÚµ¿·Ñ¸µ Á¤º¸ */

			//¹Ýº¹ÇÏÁö ¾Ê°í ½ÃÀÛÁ¡ÀÌ 0 ÀÏ °æ¿ì ¿ÞÂÊ ¹öÆ° ¼û±â±â   slideLoop : false °æ¿ì
			if( !opts.slideLoop && opts.currentPosition == 0 ) $leftBtn.hide();
			if( !opts.slideLoop && opts.currentPosition == (numberOfSlides - 1) ) $rigthBtn.hide();

			//ÀÌÀü, ´ÙÀ½ ¹öÆ°¿¡ ¾×¼Ç Ãß°¡
			$leftBtn.click(function(){
				strLoopWay = 'pre'
				Slide();
			});
			$rigthBtn.click(function(){
				strLoopWay = 'next'
				Slide();
			});

			//ÀÚµ¿ ·Ñ¸µ Á¦¾î
			$AutoDiv.mouseover(function(){
				AutoPlayStop();
			});
			$AutoDiv.mouseout(function(){
				AutoPlayStart();
			});


			//ÀÚ½Ä³ëµå¸¦ »õ·Î¿î div ¿¡ ´ã±â
			//ÀÍ½ºÇÃ·Î·¯9 ÀÏ °æ¿ì ¿¹¿Ü
			if( navigator.appVersion.indexOf("MSIE 9") > -1 ) 
			{
				div = document.createElement("DIV");
				div.id = opts.slideShowId;

				$slides.wrapAll(div).css({'width' : opts.slideWidth, 'height': opts.slideHeight});
			} 
			else  
			{
				$slides.wrapAll('<div id="'+opts.slideShowId+'"></div>').css({'width' : opts.slideWidth, 'height': opts.slideHeight});
			}			

			//»õ °´Ã¼ ´ã±â
			var $sliderInner = $('#'+opts.slideShowId);
			$sliderInner.css('width', opts.slideWidth * numberOfSlides);

			//ÁÂ¿ì ½½¶óÀÌµå ÀÏ °æ¿ì
			if( opts.slideWay == 'left' )
			{
				$slides.css({'float':'left'});
				$sliderInner.animate({
					'marginLeft' : opts.slideWidth * (-opts.currentPosition)
				});
			}
			else	//»óÇÏ ½½¶óÀÌµåÀÏ °æ¿ì
			{
				$sliderInner.animate({
					'marginTop' : opts.slideHeight * (-opts.currentPosition)
				});
			}

			//¹öÆ° Å¬¸¯½Ã ½ÇÇà ÇÔ¼ö
			function Slide() 
			{			
				if( strLoopWay == 'pre' )
				{
					opts.currentPosition = opts.currentPosition - 1;

					//·çÇÁÀÌ¸é¼­ ÇöÀç À§Ä¡°¡ 0º¸´Ù ÀÛÀ» °æ¿ì
					if( opts.slideLoop )
					{
						if( opts.currentPosition < 0 )
						{
							opts.currentPosition = 1;
							
							if( opts.slideWay == 'left' ) $sliderInner.css( 'marginLeft', opts.slideWidth * (-opts.currentPosition) );
							else $sliderInner.css( 'marginTop', opts.slideHeight * (-opts.currentPosition) );

							$('#'+opts.slideShowId +' div:last-child').insertBefore($('#'+opts.slideShowId +' div:first-child'));
							opts.currentPosition = 0;
						}
					}
					else if( !opts.slideLoop && opts.currentPosition <= 0 )
					{
						opts.currentPosition = 0;
						$rigthBtn.show();
						$leftBtn.hide();
					}
				}
				else
				{
					opts.currentPosition = opts.currentPosition + 1;
					
					//·çÇÁÀÌ¸é¼­ ÇöÀçÀ§Ä¡°¡ ÀüÃ¼º¸´Ù Å¬ °æ¿ì
					if( opts.slideLoop )
					{
						if( opts.currentPosition > numberOfSlides - 1 )
						{
							opts.currentPosition = numberOfSlides - 2;

							if( opts.slideWay == 'left' ) $sliderInner.css( 'marginLeft', opts.slideWidth * (-opts.currentPosition) );
							else $sliderInner.css( 'marginTop', opts.slideHeight * (-opts.currentPosition) );

							$('#'+opts.slideShowId +' div:first-child').insertAfter($('#'+opts.slideShowId +' div:last-child'));
							opts.currentPosition = opts.currentPosition + 1;
						}
					}
					else if( !opts.slideLoop && opts.currentPosition >= numberOfSlides - 1 )
					{
						opts.currentPosition = numberOfSlides - 1;
						$leftBtn.show();
						$rigthBtn.hide();
					}
				}

				//»óÇÏ, ÁÂ¿ì½½¶óÀÌµå ¾×¼Ç ½ÇÇà
				if( opts.slideWay == 'left' )
				{
					$sliderInner.animate({
						'marginLeft' : opts.slideWidth * (-opts.currentPosition)
					});
				}
				else
				{
					$sliderInner.animate({
						'marginTop' : opts.slideHeight * (-opts.currentPosition)
					});
				}
			}

			//ÀÚµ¿·Ñ¸µ ½ÃÀÛ
			function AutoPlayStart()
			{
				strAutoPlay = window.setInterval( function() {
					Slide();
				}, opts.AutoPlayTime);
			}

			//ÀÚµ¿·Ñ¸µ Á¾·á
			function AutoPlayStop()
			{
				window.clearInterval(strAutoPlay);
			}

			//ÀÚµ¿·Ñ¸µ ¼³Á¤
			if( opts.slideAuto ) AutoPlayStart();			

		});
	};

	//slideShow ÇÃ·¯±×ÀÎÀÇ ±âº» ¿É¼ÇµéÀÌ´Ù.
	jQuery.fn.slideShow.defaults = {
		currentPosition: 0,				//½ÃÀÛÁ¡
		slideWidth: 260,					//°¡·Î»çÀÌÁî
		slideHeight: 160,					//¼¼·Î»çÀÌÁî
		slideId: 'slide',						//ÀÚ½Ä³ëµå ¾ÆÀÌµð
		leftBtnId: 'left',						//ÀÌÀü¹öÆ° ¾ÆÀÌµð
		rigthBtnId: 'right',				//´ÙÀ½¹öÆ° ¾ÆÀÌµð
		slideShowId: 'slideInner',	//½½¶óÀÌµå ºÎ¸ð »ý¼ºÇÒ ¾ÆÀÌµð
		slideWay: 'left',					//½½¶óÀÌµå ¹æÇâ	ºó°ªÀÏ °æ¿ì À§·Î
		slideLoop: true,					//¹Ýº¹ ¿©ºÎ  false ÀÏ °æ¿ì ½ºÅé
		slideAuto: false,					//ÀÚµ¿·Ñ¸µ ¿©ºÎ
		AutoDivId: 'slideshow',		//¸¶¿ì½º ¿À¹ö/¾Æ¿ô½Ã ¿ÀÅä·Ñ¸µ Á¦¾î
		AutoPlayTime: 3500			//ÀÚµ¿·Ñ¸µ ½Ã°£
	};

}) (jQuery);
