var delay = 10000;
var start_frame = 0;
var slide_displacement = 1000;
var effect = 1; // 1=fade, 2=slide

function init() 
{
	var slideshow = document.getElementById('lh-slideshow');
	var lis = $('lh-slideshow').getElementsByTagName('li');
	
	initializeSlideshow(slideshow);
	
	// hide all but 1st slide
	for( i=0; i < lis.length; i++)
	{
		if(i!=0)
		{
			lis[i].style.visibility = 'visible';
			lis[i].style.display = 'none';
			
			// have to do this for IE and Safari
			if (effect == 2)
			{
				new Effect.Move(lis[i], {x: slide_displacement, y: 0, mode: 'absolute',transition: Effect.Transitions.spring});
			}
		}
	}
	
	end_frame = lis.length -1;
	start_slideshow(start_frame, end_frame, delay, lis);
}
function initializeSlideshow(element) {
	var cookieVal = readCookie("lhslideshow");
	if (cookieVal == 'none')
	{
		element.style.display = 'none';
		document.getElementById('lh-showhide').innerHTML = 'Show';
	}
	else
	{
		element.style.display = 'block';
		document.getElementById('lh-showhide').innerHTML = 'Hide';
	}
}
function start_slideshow(start_frame, end_frame, delay, lis) 
{
	if (effect == 2)
	{
		setTimeout(slideInOut(start_frame,start_frame,end_frame, delay, lis), delay);
	}
	else
	{
		setTimeout(fadeInOut(start_frame,start_frame,end_frame, delay, lis), delay);
	}
}
function slideInOut(frame, start_frame, end_frame, delay, lis)
{
	return (function() {
		
		lis = $('lh-slideshow').getElementsByTagName('li');
		
		// set next/prev frames
		if (frame == end_frame) 
		{  
			prevFrame = end_frame - 1;
			nextFrame = start_frame;
		} 
		else if (frame == start_frame)
		{
			prevFrame = end_frame;
			nextFrame = start_frame + 1;
		}
		else
		{ 
			prevFrame = frame - 1;
			nextFrame = frame + 1; 
		}
		currSlide = lis[frame];
		nextSlide = lis[nextFrame];
		prevSlide = lis[prevFrame];
		
		
		// 1. move screen x off screen
		new Effect.Move(currSlide, {x: -(slide_displacement), y: 0, mode: 'absolute',transition: Effect.Transitions.spring});

		currSlide.style.display = 'none';
		
		// 2. move screen y onto screen
		new Effect.Move(nextSlide, {x: 0, y: 0, mode: 'absolute',transition: Effect.Transitions.spring});
		nextSlide.style.display = 'block';

		// 3. move screen x back to start
		setTimeout("new Effect.Move(prevSlide, {x: slide_displacement, y: 0, mode: 'absolute',transition: Effect.Transitions.spring});", slide_displacement);

		// recursion
		setTimeout(slideInOut(nextFrame, start_frame, end_frame, delay), delay);
	});
}
function fadeInOut(frame, start_frame, end_frame, delay, lis) 
{
	return (function() 
	{
		lis = $('lh-slideshow').getElementsByTagName('li');
		Effect.Fade(lis[frame]);
		if (frame == end_frame) 
		{ 
			frame = start_frame; 
		} 
		else 
		{ 
			frame++; 
		}
		lisAppear = lis[frame];
		setTimeout("Effect.Appear(lisAppear);", 0);
		setTimeout(fadeInOut(frame, start_frame, end_frame, delay), delay + 1850);
	});
	
}

Effect.OpenUp = function(element) 
{
    element = $(element);
    new Effect.BlindDown(element, arguments[1] || {});
};

Effect.CloseDown = function(element) 
{
    element = $(element);
    new Effect.BlindUp(element, arguments[1] || {});
};

Effect.Combo = function(element, linkId) 
{
    element = $(element);
    var val;
    if(element.style.display == 'none') 
    { 
         new Effect.OpenUp(element, arguments[1] || {});
         document.getElementById(linkId).innerHTML = 'Hide';
         val = 'block';
         
    }
    else 
    { 
         new Effect.CloseDown(element, arguments[1] || {}); 
         document.getElementById(linkId).innerHTML = 'Show';
         val = 'none';
    }
    createCookie("lhslideshow", val, 365);
};

Event.observe(window, 'load', init, false);