/*

 * 	Easy Slider 1.5 - jQuery plugin

 *	written by Alen Grakalic	

 *	http://cssglobe.com/post/4004/easy-slider-15-the-easiest-jquery-plugin-for-sliding

 *

 *	Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)

 *	Dual licensed under the MIT (MIT-LICENSE.txt)

 *	and GPL (GPL-LICENSE.txt) licenses.

 *

 *	Built for jQuery library

 *	http://jquery.com

 *

 */

 

/*

 *	markup example for $("#slider").easySlider();

 *	

 * 	<div id="slider">

 *		<ul>

 *			<li><img src="images/01.jpg" alt="" /></li>

 *			<li><img src="images/02.jpg" alt="" /></li>

 *			<li><img src="images/03.jpg" alt="" /></li>

 *			<li><img src="images/04.jpg" alt="" /></li>

 *			<li><img src="images/05.jpg" alt="" /></li>

 *		</ul>

 *	</div>

 *

 */



(function($) {



	$.fn.easySlider = function(options){

	  

		// default configuration properties

		var defaults = {			

			prevId: 		'prevBtn',

			prevText: 		'Previous',

			nextId: 		'nextBtn',	

			nextText: 		'Next',

			controlsShow:	true,

			controlsBefore:	'',

			controlsAfter:	'',	

			controlsFade:	true,

			firstId: 		'firstBtn',

			firstText: 		'First',

			firstShow:		false,

			lastId: 		'lastBtn',	

			lastText: 		'Last',

			lastShow:		false,				

			vertical:		false,

			speed: 			800,

			auto:			false,

			pause:			2000,

			continuous:		false

		}; 

		

		var options = $.extend(defaults, options);  

			



			

		this.each(function(e) {  

			var obj = $(this); 				

			var s = $("li", obj).length;

			var w = $("li", obj).width(); 

			var h = $("li", obj).height(); 

			obj.width(w); 

			obj.height(h); 

			obj.css("overflow","hidden");

			var ts = s-1;

			var t = 0;

			$("ul", obj).css('width',s*w);			

			if(!options.vertical) $("li", obj).css('float','left');

			

			if(options.controlsShow){

				var html = options.controlsBefore;

				if(options.firstShow) html += '<span id="'+ options.firstId +'"><a href=\"javascript:void(0);\">'+ options.firstText +'</a></span>';

				html += ' <span id="'+ options.prevId +'"><a href=\"javascript:void(0);\">'+ options.prevText +'</a></span>';

				html += ' <span id="'+ options.nextId +'"><a href=\"javascript:void(0);\">'+ options.nextText +'</a></span>';

				if(options.lastShow) html += ' <span id="'+ options.lastId +'"><a href=\"javascript:void(0);\">'+ options.lastText +'</a></span>';

				html += options.controlsAfter;						

				$(obj).after(html);										

			};

	

		

			

			$("a","#"+options.nextId).click(function(){	
				
//

//
				animate("next",true);
			 $('.pause').trigger('click');
		

			});
			
			$("a","#x"+options.nextId).click(function(){	
				
//

//
				animate("next",true);
		//	 $('.pause').trigger('click');
	//	alert(4);

			});

			$("a","#"+options.prevId).click(function(){		

				animate("prev",true);
	 $('.pause').trigger('click');				

			});	

			$("a","#"+options.firstId).click(function(){		

				animate("first",true);
	// $('.pause').trigger('click');
			});				

			$("a","#"+options.lastId).click(function(){		

				animate("last",true);				
	// $('.pause').trigger('click');
			});		

			

		//

		$("#a1").click(function(){		
		$(".pictures").fadeOut('slow');
		//
			$('.aval ul li a').removeClass('shoverx');
				$('#a1 a').addClass('shoverx');
		
		//
			//	animate("first",true);	
$(".group1").delay(700).fadeIn('slow');
					$('#hidval').val(1);

				clearTimeout(timeout);

			})

			

			$("#a2").click(function(){	
			
			$('.aval ul li a').removeClass('shoverx');
			$('#a2 a').addClass('shoverx');
$(".pictures").hide();
				//	animate("second",false);
$(".group2").fadeIn('slow');					
			})

			$("#a3").click(function(){	
		
			$('.aval ul li a').removeClass('shoverx');
				$('#a3 a').addClass('shoverx');
$(".pictures").hide();
$('#hidval').val(3);			

				//animate("third",true);
$(".group3").fadeIn('slow');	
			clearTimeout(timeout);				

			})
			$("#a4").click(function(){	
			
			$('.aval ul li a').removeClass('shoverx');
			$('#a4 a').addClass('shoverx');
$(".pictures").hide();
$('#hidval').val(4);			

			//	animate("four",true);
$(".group4").fadeIn('slow');	
			clearTimeout(timeout);				

			})
			$("#a5").click(function(){	

//
$('.aval ul li a').removeClass('shoverx');
$('#a5 a').addClass('shoverx');
//
$('#hidval').val(5);			
$(".pictures").hide();
		//		animate("last",true);
$(".group5").fadeIn('slow');	
			clearTimeout(timeout);				

			})

		

			

			//

			function animate(dir,clicked){

				var ot = t;	
				var whatis;
//$('#xpic13').addClass('reqactive');
			whatis=$('.reqactive').attr('id');
			
		$('#sliderx li a').removeClass('reqactive');
				switch(dir){

					case "next":
					
					// xpic13  xpic11 xpic23 xpic22 xpic36 xpic35 xpic44 xpic46
					/*switch(whatis){ 
					case "xpic13":
					 $('#xpic11').addClass('reqactive');
					 break;
					 case "xpic11":
					 $('#xpic23').addClass('reqactive');
					 break;
					 case "xpic23":
					 $('#xpic22').addClass('reqactive');
					 break;
					 case "xpic22":
					 $('#xpic36').addClass('reqactive');
					 break;
					 case "xpic36":
					 $('#xpic35').addClass('reqactive');
					 break;
					 case "xpic35":
					 $('#xpic44').addClass('reqactive');
					 break;
					 case "xpic44":
					 $('#xpic46').addClass('reqactive');
					 break;
					 }
					//
					var selected , mimi;
					
					selected=$('ul a.shoverx').attr('href');
					mimi=$('#slidem').val();
					
						//	alert(mimi);
							if (mimi==1){
							$('#slidem').val(2)
							}
							else
						if (mimi==2){
							$('#slidem').val(1)
							$('ul  a').removeClass('shoverx');
							$(".pictures").hide();
								switch(selected)
								{
									case '#b':
									$('#hidval').val(3);	
									$('ul #a3 a').addClass('shoverx');
									 $(".group3").fadeIn('slow');
									  break;
									case '#c':
									$('#hidval').val(4);	
									$('ul #a4 a').addClass('shoverx');
									 $(".group4").fadeIn('slow');
									  break;
									  case '#d':
							
									  break;
									  default:
									  $('#hidval').val(2);
									$('ul #a2 a').addClass('shoverx');
									 $(".group2").fadeIn('slow');
								  }
						}*/
						t = (ot>=ts) ? (options.continuous ? 0 : ts) : t+1;						

						break; 

					case "prev":
					
					/*switch(whatis){ 
					case "xpic11":
					 $('#xpic13').addClass('reqactive');
					 break;
					 case "xpic23":
					 $('#xpic11').addClass('reqactive');
					 break;
					 case "xpic22":
					 $('#xpic23').addClass('reqactive');
					 break;
					 case "xpic36":
					 $('#xpic22').addClass('reqactive');
					 break;
					 case "xpic35":
					 $('#xpic36').addClass('reqactive');
					 break;
					 case "xpic44":
					 $('#xpic35').addClass('reqactive');
					 break;
					 case "xpic46":
					 $('#xpic44').addClass('reqactive');
					 break;
					 }
					 
					//
					var selected , mimi;
					mimi=$('#slidem').val();
					selected=$('ul a.shoverx').attr('href');
					//alert(mimi);
					if (mimi==2){
						$('#slidem').val(1)
					}
					else
					
					if (mimi==1){
					$('#slidem').val(2)
						$('ul  a').removeClass('shoverx');
						$(".pictures").hide();
						switch(selected)
						{
							case '#b':
							$('#hidval').val(1);	
							$('ul #a1 a').addClass('shoverx');
							 $(".group1").fadeIn('slow');
							  break;
							case '#c':
							$('#hidval').val(2);	
							$('ul #a2 a').addClass('shoverx');
							 $(".group2").fadeIn('slow');
							  break;
							  case '#d':
							$('#hidval').val(3);	
							$('ul #a3 a').addClass('shoverx');
							 $(".group3").fadeIn('slow');
							  break;
							  default:
							  $('#hidval').val(1);
						
						  }
					}*/
						t = (t<=0) ? (options.continuous ? ts : 0) : t-1;

						break; 

					case "first":
				
						$('#xpic13').addClass('reqactive');
						
						t = 0;

						break; 
 
						case "second":
						
						
						$('#xpic23').addClass('reqactive');
					
						t = 2;

						break; 
						case "third":

					
						$('#xpic36').addClass('reqactive');
						
					
						t = 4;

						break; 
						case "four":


$('#xpic44').addClass('reqactive');
					
						t = 6;

						break; 

					case "last":
						
					$('#xpic44').addClass('reqactive');
							
						t = ts;

						break; 

					default:

						break; 

				};	

				

				var diff = Math.abs(ot-t);

				var speed = diff*options.speed;						

				if(!options.vertical) {

					p = (t*w*-1);

					$("ul",obj).animate(

						{ marginLeft: p }, 

						speed

					);				

				} else {

					p = (t*h*-1);

					$("ul",obj).animate(

						{ marginTop: p }, 

						speed

					);					

				};

				

				if(!options.continuous && options.controlsFade){					

					if(t==ts){

						$("a","#"+options.nextId).hide();

						$("a","#"+options.lastId).hide();

					} else {

						$("a","#"+options.nextId).show();

						$("a","#"+options.lastId).show();					

					};

					if(t==0){

						$("a","#"+options.prevId).hide();

						$("a","#"+options.firstId).hide();

					} else {

						$("a","#"+options.prevId).show();

						$("a","#"+options.firstId).show();

					};					

				};				

				

				if(clicked) clearTimeout(timeout);

				if(options.auto && dir=="next" && !clicked){;

					timeout = setTimeout(function(){

						animate("next",false);

					},diff*options.speed+options.pause);

				};

				

			};

			// init

			var timeout;

			if(options.auto){;

				timeout = setTimeout(function(){

					animate("next",false);

				},options.pause);

			};		

		

			if(!options.continuous && options.controlsFade){					

				$("a","#"+options.prevId).hide();

				$("a","#"+options.firstId).hide();				

			};				

			

		});

	  

	};



})(jQuery);








