/*
 * 	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>
 *
 */
//var hiddenCurrentImage="" ;

(function($) {
  
	$.fn.easySlider = function(options){
	    
		// default configuration properties
		var defaults = {			
			prevId: 		'prevBtn',
			prevText: 		'',
			nextId: 		'nextBtn',	
			nextText: 		'',
			controlsShow:	true,
			controlsBefore:	'',
			controlsAfter:	'',	
			controlsFade:	true,
			firstId: 		'firstBtn',
			firstText: 		'First',
			firstShow:		false,
			lastId: 		'lastBtn',	
			lastText: 		'Last',
			lastShow:		false,				
			vertical:		false,
			speed: 			150,
			auto:			false,
			pause:			5000,
			continuous:		false
		}; 
		
		var ot = 0;
		var options = $.extend(defaults, options);  
		var numberOfImages =0;
		var currentImagePathSrc ="";
		var indexOfCurrentImage =0;
		var arrayAllLiElements ;
		var lengthLiElements=0;	
		
		
		this.each(function() {  
		
			var obj = $(this); 
			
			//save current image path 
			arrayAllLiElements= $("li", obj);
			lengthLiElements =arrayAllLiElements.length;
		    currentImagePathSrc = $("img", arrayAllLiElements[indexOfCurrentImage]).attr('src'); 
            var className = $("img", arrayAllLiElements[indexOfCurrentImage]).attr('class'); 
            $("#ctl01_uxPlaceHolder_uxProductFormView_ctl01_hiddenCurrentImage").val(className);
//alert(className);
			//				
			var s = $("li", obj).length;
			var w = $("li", obj).width(); 
			var h = $("li", obj).height(); 
			
			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);										
			};
			
			$(".img0").children().attr("src", "Images/dot2.png");
			
			//$(".paging a", this).each(function(index, element){
			$(".paging a").each(function(index, element){
			    $(element).click(function(){		
				    goTo(index, true);
				});
			});
	
			$("a","#"+options.nextId).click(function(){	
				
				animate("next",true);
			});
			$("a","#"+options.prevId).click(function(){		
				animate("prev",true);				
			});	
			$("a","#"+options.firstId).click(function(){		
				animate("first",true);
			});				
			$("a","#"+options.lastId).click(function(){		
				animate("last",true);				
			});		
			
			function animate(dir,clicked){
				ot = t;
				switch(dir){
					case "next":
					  
						t = (ot>=ts) ? (options.continuous ? 0 : ts) : t+1;						
						//t = ((t-1)>=ts) ? (options.continuous ? 0 : ts) : t+1;
                        if ((lengthLiElements -1)> indexOfCurrentImage)
                        {
                        indexOfCurrentImage= indexOfCurrentImage +1;
                        }
                       
                         currentImagePathSrc = $("img", arrayAllLiElements[indexOfCurrentImage]).attr('src'); 
                         var className = $("img", arrayAllLiElements[indexOfCurrentImage]).attr('class'); 
                         $("#ctl01_uxPlaceHolder_uxProductFormView_ctl01_hiddenCurrentImage").val(className);
						break; 
					case "prev":
						t = (t<=0) ? (options.continuous ? ts : 0) : t-1;
						//if ((lengthLiElements -1)> indexOfCurrentImage)
                       // {
                        indexOfCurrentImage= indexOfCurrentImage -1;
                      //  }
                       
                         currentImagePathSrc = $("img", arrayAllLiElements[indexOfCurrentImage]).attr('src'); 
                         var className = $("img", arrayAllLiElements[indexOfCurrentImage]).attr('class'); 
                      //  $("#"+ hiddenCurrentImage).val(currentImagePathSrc);
                         $("#ctl01_uxPlaceHolder_uxProductFormView_ctl01_hiddenCurrentImage").val(className);
						
						break; 
					case "first":
						t = 0;
						break; 
					case "last":
						t = ts;
						break; 
					default:
						break; 
				};
				goTo(t, clicked);	
			};
			
			function goTo(index, clicked){

			
			
			    t = index;
			    ChangeImg(t);
				var diff = Math.abs(ot-t);
				//Original speed:
				//var speed = diff*options.speed;
				var speed = 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).css("display", "none");
						$("a","#"+options.lastId).css("display", "none");
					} else {
						$("a","#"+options.nextId).css("display", "block");
						$("a","#"+options.lastId).css("display", "block");
					};
					if(t==0){
						$("a","#"+options.prevId).css("display", "none");
						$("a","#"+options.firstId).css("display", "none");
					} else {
						$("a","#"+options.prevId).css("display", "block");
						$("a","#"+options.firstId).css("display", "block");
					};					
				};				
				
				if(clicked) clearTimeout(timeout);
				if(options.auto && dir=="next" && !clicked){;
					timeout = setTimeout(function(){
						animate("next",false);
					},diff*options.speed+options.pause);
				};
				ot = t;
			};
			// init
			
			if (s == 1)
			{
			    OnePic();
			}
			
			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);

function ChangeImg(ImgCount)
{
    $(".imgRound").children().attr("src", "Images/dot.png");
    $(".img"+ImgCount).children().attr("src", "Images/dot2.png");
}

function OnePic()
{
    $("#nextBtn").css("display", "none");
    //alert('d');
}

function slideShow1() {   
 
   //Set the opacity of all images to 0   
    $('#gallery1 a').css({opacity: 0.0});   
      
   //Get the first image and display it (set it to full opacity)   
    $('#gallery1 a:first').css({opacity: 1.0});   
      
   //Set the caption background to semi-transparent   
   $('#gallery1 .caption').css({opacity: 0.7});   
 
   //Resize the width of the caption according to the image width   
    $('#gallery1 .caption').css({width: $('#gallery a').find('img').css('width')});   
 
   //Call the gallery function to run the slideshow, 6000 = change to next image after 6 seconds 
   firstTime();  
   setInterval('gallery1()',5000);   
      
}   



function gallery1() {   
      
   
  //if no IMGs have the show class, grab the first image   
    var current = ($('#gallery1 a.show')?  $('#gallery1 a.show') : $('#gallery1 a:first'));   
 
   //Get next image, if it reached the end of the slideshow, rotate it back to the first image   
   var next = ((current.next().length) ? ((current.next().hasClass('caption'))? $('#gallery1 a:first') :current.next()) : $('#gallery1 a:first'));      
      
   //Get next image caption   
   var caption = next.find('img').attr('rel');    
      
   //Set the fade in effect for the next image, show class has higher z-index   
   next.css({opacity: 0.0})   
   .addClass('show')   
   .animate({opacity: 1.0}, 1500);   
 
  //Hide the current image   
   current.animate({opacity: 0.0}, 1000)   
   .removeClass('show');   
     
  //Set the opacity to 0 and height to 1px   
   $('#gallery1 .caption').animate({opacity: 0.0}, { queue:false, duration:0 }).animate({height: '1px'}, { queue:true, duration:300 });    
      
  //Animate the caption, opacity to 0.7 and heigth to 100px, a slide up effect   
   $('#gallery1 .caption').animate({opacity: 0.7},100 ).animate({height: '100px'},500 );   
     
  //Display the content   
  $('#gallery1 .content').html(caption);   
          
}

function firstTime(){
     $('#gallery1 a').css("display","block");
    //if no IMGs have the show class, grab the first image   
    var current = ($('#gallery1 a.show')?  $('#gallery1 a.show') : $('#gallery1 a:first'));   
 
   //Get next image, if it reached the end of the slideshow, rotate it back to the first image   
   var next = ((current.next().length) ? ((current.next().hasClass('caption'))? $('#gallery1 a:first') :current.next()) : $('#gallery1 a:first'));      
      
   //Get next image caption   
   var caption = next.find('img').attr('rel');    
      
   //Set the fade in effect for the next image, show class has higher z-index   
   next.css({opacity: 0.0})   
   .addClass('show')   
   .animate({opacity: 1.0}, 1500);   
 
  //Hide the current image   
   current.animate({opacity: 0.0}, 1000)   
   .removeClass('show');   
     
  //Set the opacity to 0 and height to 1px   
   $('#gallery1 .caption').animate({opacity: 0.0}, { queue:false, duration:0 }).animate({height: '1px'}, { queue:true, duration:300 });    
      
  //Animate the caption, opacity to 0.7 and heigth to 100px, a slide up effect   
   $('#gallery1 .caption').animate({opacity: 0.7},100 ).animate({height: '100px'},500 );   
     
  //Display the content   
  $('#gallery1 .content').html(caption);
}


