/*  */


$.fn.imageLoader = function(options)
	{		
		var defaults ={
			speed:15000,			
			imageCount:10			
		}
		
		var options = $.extend(defaults,options)
		
		this.each(function(){					
			var first = true;			
			var $obj = this;
			var $this = $(this)
			var $images = $(this).children();
			var size = $(this).children().size();
			var imagepath = $(this).children().eq(0).attr('src');
			var imageWidth = $(this).children().eq(0).width();
			//alert(imageWidth);
			
			imagepath = imagepath.split('/');			
			var temp = [];
			
			var $div ="<div id='movingSteetHiddenImages'></div>"			
			$("body").append("<div id='movingSteetHiddenImages'></div>");
			$("#movingSteetHiddenImages").hide();
			
			
			for(i=0;i<imagepath.length-1;i++)
			{
				temp.push(imagepath[i]);
			}
			
			var imagepath = temp.join('/');			
			var start=2 , i=0;						
			
			
			//setinter val for add images  from server
			setInterval(function(){
				 start++;
				 if(start<=defaults.imageCount)
				 {
				 	addNewImages(start)
				 }				 
			},5000);
			
			
			//function to call images form server
			function addNewImages(start){				
				var newImage = new Image();				
				newImage.src=imagepath+"/"+start+".jpg";				
				$obj.appendChild(newImage);				
				if(first==true)
				{					
					startAnimation();
					first=false;					
				}				
			}
			
			//function ti start animation
			function startAnimation(){	
				$this.children('img.first').animate({marginLeft:-imageWidth+'px'},defaults.speed,'linear',function(){
					$(this).next().addClass('first');
					$(this).removeClass('first');
					i++;
					if(i>=defaults.imageCount)
					{
						$(this).css('marginLeft','0px');
						$this.append($(this));						
					}
					else
					{						
						$("#movingSteetHiddenImages").append($(this));
					}
					
					// this function calls when image counter is less than one
					if(i==defaults.imageCount-1)
					{
						addImagesFromDiv()
					}
					
					startAnimation();
				})				
			}
			
			//function to pasrt as hidden images
			function addImagesFromDiv() 
			{	
				$("#movingSteetHiddenImages img").each(function(){
					 $(this).css('marginLeft','0px');					 					 
					 $this.append($(this));
				})
				
				
			}
			
		})
		
		return this;
};

