/**
 * @author Xoro
 */
(function($){
	
	$.slides = function( options ) {
			
			//Settings de la animación
			var settings = {			
				
				intervalo_slide         :   5000,		//Intervalo entre imágenes
				velocidad_slide			:	750,		//Velocidad de la animación
				element_container		: 	$('#aniContainer'), //Elemento de la animación por defecto
				
	    	};
			
			var currentSlide = 0; //IMG inicial
			var imgArr = new Array();
			var imgId;
			
			var depuradorMsg = "Atención: ";
			
			var numSlides = (options.imgs.length)-1;
			var currentLoadSlide = 0;
			
			//Leemos las imágenes y las guardamos en un array
			function loadSlides(){
				if(currentLoadSlide < numSlides)
				{
					imgId = "img_slide_"+currentLoadSlide;				
					imgArr[currentLoadSlide] =  $('<img />')
									.attr({
										src: options.imgs[currentLoadSlide].image,
										id: imgId
									  })
									 .css({
										 display: 'none',
										 position: 'absolute'
									 })
									 .load(function(){
										 if(options.show_first == 1){ //Si tiene que verse la primera imágen al inicio
											 $(this).css('display', 'block');
											 options.show_first = 0; //Lo ponemos a cero para que no se repita
										 }

										 $(this).appendTo(options.element_container);

									 });
					currentLoadSlide++;
					loadSlides();
				}
			}
			
			//Iniciamos la función para leer las imágenes
			loadSlides();
			

			//Si resizeImg == 1 cambiaremos el tamaño de la imágen
			if(options.resizeImg) resizeSlide();
			
			/**Cambiar tamaño de la imagen**/
			function resizeSlide(){
				var elementContainerWidth  = options.element_container.width(); //Largaria del contenedor
				var elementContainerHeight = options.element_container.height(); //Alto del contenedor
				
				for (var i=0; i < options.imgs.length; i++){
					
					//Ratio de la imagen
					var ratio = (imgArr[i].height()/imgArr[i].width()).toFixed(2);
					
					if(options.fit_width){ //Si fit_width == 1 Reescala la imágen a lo ancho del contenedor
						imgArr[i].width(elementContainerWidth);
						imgArr[i].height(elementContainerWidth * ratio);
						options.element_container.height(imgArr[i].height()); //Corregimos la altura del contenedor
					}
					else if(options.fit_height){ //Si fit_height == 1 Reescala la imágen a lo alto del contenedor
						imgArr[i].height(elementContainerHeight);
						imgArr[i].width(elementContainerHeight / ratio);
					}
					else{ //Si ninguno de los dos es igual a 1 la imágen tendrá el alto y ancho del contenedor
						imgArr[i].height(elementContainerHeight);
						imgArr[i].width(elementContainerWidth);
					}
				}
			}
			
			
			
			//Animación slide show
			function nextSlide(){
				$('#inteval').html("<p>"+currentSlide+"</p>");
				
				if(currentSlide+1 < imgArr.length){
					imgArr[currentSlide].hide('fade', options.velocidad_slide);
					currentSlide++;
					imgArr[currentSlide].show('fade', options.velocidad_slide);
					$('#current_img').html("<p>"+imgArr[currentSlide].attr('src')+"</p>");
				}
				else{
					imgArr[currentSlide].hide('fade', options.velocidad_slide);
					currentSlide = 0;
					imgArr[0].show('fade', options.velocidad_slide);
				}
				
			}
			
			
			slideInterval = setInterval(function() {
				nextSlide();
			}, options.intervalo_slide);
			
			
			
			
	}//Function $.slides
				
})(jQuery);
