
function Fade(fade_set_ID, speed) {

	var effects    = new Array();
	var fade_speed = null;
	var fade_set   = null;	

	this.start_fade=function() {

		fade_speed 	= speed;
		this.fade_set   = document.getElementById(fade_set_ID);
		
		create_image_fades(fade_set);

		run_fades();


	}

	function fade_next(x) {
	  
  	  return function() { window.setTimeout(function() {
	    //alert(x + " has finished");
	    effects[x-1].toggle(); 
	    },
	    fade_speed); 
            };
        }

	function restartSequence(x) {
	  
  	  return function() { 

	    window.setTimeout(
	      function() {

		effects[x].options.onComplete=fade_next(x);
//		effects[first_item].toggle(); 

	 },

	    fade_speed); 

            }; // end function

        }
	
	
	function get_fading_images() {
	
	 

		


	  
	}

function create_image_fades(fade_set) {
	
		var images  = this.fade_set.getElementsByTagName("img");

		var i;
		i = 0;
	
		// For Each image
		for (i=0; i<images.length; i++) {
		  //alert(images[i].src);
		  effects.push(new Fx.Opacity(images[i])); // end push 
		}

		
		//effects[4].toggle();		

	

		// For each effect
		for(i=effects.length-1; i>=0;i--) {
		
		//alert(i);
		//alert(images[i].src);
	
		  if (i == 0) {
			effects[i].options.onStart=function() { effects[effects.length-1].toggle(); };			
			effects[i].options.onComplete=restartSequence(effects.length-1);
		  } else {
		  /**if (i == effects.length-1) {   // start **/
		       effects[i].options.onComplete=fade_next(i);
		  }
		  

		} // end for


	
	}


	function run_fades() {
		window.setTimeout(function() { effects[effects.length-1].toggle(); }, fade_speed);
	}

	
} // End Class Fade