(function($)
	{
		  $.fn.fxslider=function(settings)
		  {
			 
			 settings=jQuery.extend({
						prevButtonId:'pb1',
						prevButtonId:'pb2',
						caption:true,
						autoTransition:true
						 },settings);
		
		var $slider=$(this);
		
		var panelSource=[];
		var panelWidth=parseInt($slider.css('width'));
		var panelHeight=parseInt($slider.css('height'));
		var totalPanel=$slider.find('img').length;
		var current_slide=1;
		var	scrollAmount=panelWidth;
		var temp;
		var $prev=null;
		var $next=null;
		var transitionSpeed=7000;
		var	scrollSpeed=3000;
		var counter=0;
		var content=$slider.html();
		var msgBox=null;
		var caption=[];
		var intervalId = null;
		transitionStatus = "running";
		
	function _intHeader()
		{
				_addContent();
				_setCss_property();
				_setControl();
			
		};
		
			
		
		function _addContent()
		{
			
			$slider.find('img').each(function(n){
											  		caption[n]=$(this).attr('des');
													
													
											  });
			
			$slider.html("");
			$slider.html("<div class='slider_wrapper'><div class='"+settings.prevButtonId+"'></div><div class='slider_panel'>"+content+"</div><div class='"+settings.nextButtonId+"'></div></div>");
			
			$('.current_slide').text(current_slide+'/'+totalPanel);
			
			$prev=$slider.find('.slider_wrapper div').first();
			$next=$slider.find('.slider_wrapper div').last();
			$slider.find('.slider_wrapper').append('<div class="captionBack"></div>');
			$slider.find('.slider_wrapper').append('<div class="caption"></div>');
			
			$slider.find('.slider_wrapper .caption').text(caption[0]);
			$(".header-btm").text(caption[counter]);
			
		};
	
		function _setCss_property()
		{	
			$slider.css({
											   
											   'float':'left',
											   'margin-bottom':20+'px'
											   });
			
			$slider.find('.slider_wrapper').css({
											   'width':panelWidth,
											   'height':panelHeight,
											   'position':'relative',
											   'overflow':'hidden',
											   'float':'left'
											   
											   });
			
			$slider.find('.slider_wrapper .captionBack').css({
														 	'width':panelWidth,
														   'height':40+"px",
														   'position':'absolute',
														   'top'	: panelHeight-40,
														   'float':'left',
														   'background': '#000000',
														   'opacity': 0.5,
														   'display': 'none'
														 });
			
			$slider.find('.slider_wrapper .caption').css({
														 	'width':panelWidth,
														   'height':40+"px",
														   'position':'absolute',
														   'top'	: panelHeight-40,
														   'float':'left',
														   'color' : '#FFFFFF',
														   'font-size': '16px',
														   'font-weight': 'bold',
														   'padding': '10px 10px 10px 10px',
														   'display': 'none'
														 
														 });
			$slider.find('.slider_panel').css({
											   'width':(panelWidth*totalPanel),
											   'height':panelHeight,
											   'position':'absolute'
											   });
			$slider.find('.slider_panel img').css({
											   'float':'left'
											   });
			
			$prev.css({
											   'width':'48px',
											   'height':'48px',
											   'position':'absolute',
											   'left':24+'px',
											   'top':189+'px',
											   'background':'url(images/left_arrow.png) no-repeat',
											   'z-index':999,
											   'cursor':'pointer',
											   'display': 'none'
											   });
			$next.css({
											   'width':'48px',
											   'height':'48px',
											   'position':'absolute',
											   'left':$slider.find('.slider_wrapper').width()-46,
											   'top':189+'px',
											   'background':'url(images/right_arrow.png) no-repeat',
											   'z-index':999,
											   'cursor':'pointer',
											   'display': 'none'
											   });
			
			if(settings.caption)
			{
				$slider.find('.slider_wrapper .caption').show();
				$slider.find('.slider_wrapper .captionBack').show();
			}
		}
		function _setControl()
		{
			$prev.bind('click',_clickFunc);
			$next.bind('click',_clickFunc);
			
			$prev.bind('mouseover', _mouseOver);
			$next.bind('mouseover', _mouseOver);
			$prev.bind('mouseout',_mouseOut);
			$next.bind('mouseout',_mouseOut);
			
			$slider.find('.slider_wrapper').bind('mouseout',_mouseOut);
			$slider.find('.slider_wrapper').bind('mouseover',_mouseOver);
			
		
		};
		
		function _mouseOver()
		{
			switch($(this).attr('class'))
			{
			case settings.prevButtonId:
			$(this).css({
							'background':'url(images/left_arrow_over.png) no-repeat'
						});
			break;
			
			case settings.nextButtonId:
				$(this).css({
							'background':'url(images/right_arrow_over.png) no-repeat'
						});
			break;
			
			case "slider_wrapper":
				showArrow();
			break;
			}
		}
		
		function _mouseOut()
		{
			switch($(this).attr('class'))
			{
			case settings.prevButtonId:
			$(this).css({
							'background':'url(images/left_arrow.png) no-repeat'
						});
			break;
			
			case settings.nextButtonId:
				$(this).css({
							'background':'url(images/right_arrow.png) no-repeat'
						});
			break;
			
			case "slider_wrapper":
				hideArrow();
			break;
			
			}
		}
		
		function _clickFunc()
		{	
			autoTransitionStop();
			
			switch($(this).attr('class'))
	  		{
		  
			case settings.prevButtonId:  
				if(counter>0)
				{
				current_slide=current_slide-1;
				counter--;
				
				_moveNext(counter);
				
				}
			break;
		
				case settings.nextButtonId:
				
				if(counter<totalPanel-1)
				{
				current_slide=current_slide+1;
				counter++;
				_moveNext(counter);
				}
			break;
		  
	  		}
			
		}
		
		function showArrow()
		{
			$next.show();
			$prev.show();
		}
		
		function hideArrow()
		{
			$prev.hide();
			$next.hide();
		}
		
		function _moveNext(counter)
		{
			tgt_left = counter*(-1)*scrollAmount;
			
			$slider.find('.slider_panel').animate({left:tgt_left},scrollSpeed,"easeOutExpo",function(){
																									 	if(transitionStatus=="stopped")
																										{
																									 	autoTransitionStart();
																										transitionStatus="running";
																										}
																									 });
			$('.current_slide').text(current_slide+'/'+totalPanel);
			$slider.find('.slider_wrapper .caption').text(caption[counter]);
			$(".header-btm").text(caption[counter]);
		}
		
		function autoTransition()
		{
			current_slide=current_slide+1;
			counter++;
			
			if(counter>totalPanel-1)
			{
			counter = 0
			}
			_moveNext(counter);
		}
		
		function autoTransitionStart()
		{
			intervalId = setInterval(autoTransition,transitionSpeed);
		}
		
		function autoTransitionStop()
		{
			clearInterval(intervalId);
			
			transitionStatus = "stopped";
		}

_intHeader();

		if(autoTransition)
		{
		autoTransitionStart();
		}
		
		  }
	})(jQuery)
