var rotate_delay = 4000;
current=0;
var intervalObj;
var startButtonImgName, stopButtonImgName;


/* StartSlideshow(p_stopButtonImgName) -
		Input - name of Button Image to swap for current image
		Output - Changes Button Image as well as onClick behaviour

	Can be used with or without a parameter.  Without a parameter will 
	only set the onClick behavior for the button. 
*/
function startSlideshow( p_stopButtonImgName )
	{
		var startButton;
		
		if (!intervalObj)
		{
			intervalObj = window.setInterval( "next()", rotate_delay);
			startButton = MM_findObj('slide');
			if (p_stopButtonImgName)
			{
				stopButtonImgName = p_stopButtonImgName;
				startButtonImgName = startButton.src;
				startButton.src = p_stopButtonImgName;
				startButton.onclick = stopSlideshow;
			}	// endif stop Btn Img parameter exists
			else if (stopButtonImgName)
			{
				startButton.src = stopButtonImgName;
				startButton.onclick = stopSlideshow;
			}	// end else
		}	// endif
	}	// end startSlideshow()

function startSlideshowPrime()
	{
		var startButton;
		
		if (!intervalObj)
		{
			intervalObj = window.setInterval( "next()", rotate_delay);
			startButton = MM_findObj('slide');
			if (stopButtonImgName)
			{
				startButton.src = stopButtonImgName;
				startButton.onclick = stopSlideshow;
			}	// end else
		}	// endif
	}	// end startSlideshow()

/* 	stopSlideshow() 
		Input: none
		Output: Set the stop button image and starts the slideshow.

		Only activated if the start button is currently dispalyed.
*/	
function stopSlideshow()
	{
		var stopButton;
		
		if (intervalObj)
		{
			window.clearInterval( intervalObj );
			intervalObj = null;
			if (startButtonImgName)
			{
				stopButton = MM_findObj('slide');
				stopButton.src = startButtonImgName;
				stopButton.onclick = startSlideshowPrime;
			}	// endif start img exists
		}	//endif
	}	// end stopSlideshow()



  function next()
	{
		var x;
		if (document.MM_p[current+1])
		{
			x=MM_findObj('slides');
			x.src = document.MM_p[++current].src;
		}
		else first();
	}	// end function next()
	
	
	function previous()
	{
		var x;
		if (current-1 >= 0)
		{
		     x=MM_findObj('slides');
			 x.src = document.MM_p[--current].src;
		}
		else last();
	}   //end function previous()
	
	
	function first()
	{
		current = 0;
		MM_findObj('slides').src = document.MM_p[current].src;
	}	// end function first()
	
	function last()
	{
		current = document.MM_p.length-1;
		MM_findObj('slides').src = document.MM_p[current].src;
	}  // end function last()
	

function MM_preloadImages() { //v3.0
  var d=document; 
  if(d.images)
  		{ if(!d.MM_p) 
		    d.MM_p=new Array();
                var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 
		  		for(i=0; i<a.length; i++)
				
				if (a[i].indexOf("#")!=0)
					     { d.MM_p[j]=new Image; 
						   d.MM_p[j++].src=a[i];}
		 }
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  
  if(!d) 
    d=document; 
	       if((p=n.indexOf("?"))>0&&parent.frames.length) {
                    d=parent.frames[n.substring(p+1)].document;
				    n=n.substring(0,p);
					}
            if(!(x=d[n])&&d.all) 
			         x=d.all[n]; 
			for (i=0;!x&&i<d.forms.length;i++)
			             x=d.forms[i][n];
            for(i=0;!x&&d.layers&&i<d.layers.length;i++)
			             x=MM_findObj(n,d.layers[i].document);
            if(!x && d.getElementById) 
			             x=d.getElementById(n); 
						 
  return x;
}