(function( $ ){
	$.fn.LRContentSlide = function( options ) {
		var defaults = {
			arrownav: true,
			tabnav: false
		};
		var opts = $.extend(defaults, options);
		
		return this.each(function() {
			var obj = this;
			var current = 1;
			var maxitem = 0;
			
			maxitem = $('.contents li.content',obj).length;
			
			display($('.contents li.content:first-child',this));
			
			$('.nav a',this).bind('click.lrcontentslide',function(e){
				e.preventDefault();
				
				if($(this).parent('li').hasClass('active')){				
					var $oldc = $('.contents li.content:nth-child('+current+')');
					if($(this).parent('li').hasClass('next')){
						current++;
					}else if($(this).parent().hasClass('prev')){
						current--;
					}
					display($('.contents li.content:nth-child('+current+')'),$oldc);
				}
				return false;
			});
			
			$('.tabnav a',this).bind('click.lrcontentslide',function(e){
				e.preventDefault();
				if(!$(this).hasClass('showvideo')){
					var $oldc = $('.contents li.content:nth-child('+current+')');
					current = $(this).parent('li').index()+1;
					display($('.contents li.content:nth-child('+current+')'),$oldc);
				}
				return false;
			});
	
			$(document).bind('keydown.lrcontentslide',function (e) {
				if(!opts.tabnav){
					var keyCode = e.keyCode || e.which,
					arrow = {left: 37, right: 39};
					switch (keyCode) {
						case arrow.left:
							if(current > 1)
								$('.nav .prev a',obj).trigger('click');
						break;
						case arrow.right:
							if(maxitem > 1 && current < maxitem)
								$('.nav .next a',obj).trigger('click');
						break;
					}
				}
			});
			
			function activeTab(){
				$('.tabnav li',obj).each(function(index){
					if(current == index+1){
						$(this).addClass('active');
					}else{
						$(this).removeClass('active');
					}
				});
			}
			
			function showNav(){
				if(current < maxitem){
					$('.nav li:eq(1)',obj).addClass('active');
				}else{
					$('.nav li:eq(1)',obj).removeClass('active');
				}
				
				if(current > 1 && current <= maxitem){
					$('.nav li:eq(0)',obj).addClass('active');
				}else{
					$('.nav li:eq(0)',obj).removeClass('active');
				}
			}
			
			function display($newc, $oldc){
				if(opts.arrownav)showNav();
				if(opts.tabnav)activeTab();

				if($newc.length > 0){
					if($oldc){
						$oldc.fadeOut('fast');
					}
					$newc.fadeIn('slow',function(){
						if($newc.height()>0){
							$newc.parent('.contents').height($newc.height());
						}
					});
				}
			}
		});
	};
})( jQuery );
