/* Copyright (c) 2008 Kean Loong Tan http://www.gimiti.com/kltan


 * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)


 * jFlow


 * Version: 1.1 (May 22, 2008)


 * Requires: jQuery 1.2+


 */





//modified by LandRover 30th May 08





(function($) {





	$.fn.jFlow = function(options) {


		var opts = $.extend({}, $.fn.jFlow.defaults, options);


		var cur = 0;


		var timer;


		var selected_class = "jFlowSelected";


		var maxi = $(".jFlowControl").length;


		$(this).find(".jFlowControl").each(function(i){


			$(this).click(function(){


				dotimer();


				


				$(".jFlowControl").removeClass(selected_class);


				$(this).addClass(selected_class);


				//alert(cur);


				//alert(i);


				var dur = Math.abs(cur-i);


				$(opts.slides).animate({


					marginLeft: "-" + (i * $(opts.slides).find(":first-child").width() + "px")


				}, opts.duration*(dur));


				cur = i;


			});


		});	





		$(opts.slides).before('<div id="jFlowSlide"></div>').appendTo("#jFlowSlide");





		$(opts.slides).find("div").each(function(){


			$(this).before('<div class="jFlowSlideContainer"></div>').appendTo($(this).prev());


		});





		//initialize the controller


		$(".jFlowControl").eq(cur).addClass(selected_class);





		var resize = function (x){


			$("#jFlowSlide").css({


				position: "relative",


				width: opts.width,


				/*height: opts.height,*/


				overflow: "hidden"


			});





			$(opts.slides).css({


				position:"relative",


				width: $("#jFlowSlide").width()*$(".jFlowControl").length+"px",


				/*height: $("#jFlowSlide").height()+"px",*/


				overflow: "hidden"


			});





			$(opts.slides).children().css({


				position: "relative",


				width: $("#jFlowSlide").width()+"px",


				/*height: $("#jFlowSlide").height()+"px",*/


				"float":"left"


			});





			$(opts.slides).css({


				marginLeft: "-" + (cur * $(opts.slides).find(":first-child").width() + "px")


			});


		}





		resize();





		$(window).resize(function(){


			resize();


		});





		$(".jFlowPrev").click(function(){


			dotimer();


			doprev();


		});


		


		var doprev = function (x){


			if (cur > 0)


				cur--;


			else


				cur = maxi -1;





			$(".jFlowControl").removeClass(selected_class);


			$(opts.slides).animate({


				marginLeft: "-" + (cur * $(opts.slides).find(":first-child").width() + "px")


			}, opts.duration);


			$(".jFlowControl").eq(cur).addClass(selected_class);


		}





		$(".jFlowNext").click(function(){


			donext();


			dotimer();


		});





		var donext = function (x){


			if (cur < maxi - 1)


				cur++;


			else


				cur = 0;





			$(".jFlowControl").removeClass(selected_class);


			$(opts.slides).animate({


				marginLeft: "-" + (cur * $(opts.slides).find(":first-child").width() + "px")


			}, opts.duration);


			$(".jFlowControl").eq(cur).addClass(selected_class);


		}





		var dotimer = function (x){


			if(timer != null) 


			    clearInterval(timer);


			    


        		timer = setInterval(function() {


	                	donext();


    	        	}, 5000);


    	        	


    	        }





		dotimer();


	};





	$.fn.jFlow.defaults = {


		easing: "swing",


		duration: 400,


		width: "100%"


	};





})(jQuery);
