/* Event Handling */

Event.observe(window, 'load', function() {
	
	$('next_work').observe('click', function(e){
		stop_slideshow();
		slide_right();
		e.stop();
	});
	
	$('prev_work').observe('click', function(e){
		stop_slideshow();
		slide_left();
		e.stop();
	});
	
	setTimeout('play_slideshow()', 7000)
	
});

/* functions */

var slideTimer = null;
var finished = true;

function play_slideshow() {
	slide_right();
	slideTimer = setTimeout('play_slideshow()', 5500);
}

function stop_slideshow() {
	clearTimeout(slideTimer);
}

function slide_right() {
	if(finished){
		finished = false;
		
		var xpos = $('slider').style.left;
		if(xpos != '-2250px') {
			new Effect.Move($("slider"), { x: -450, mode: 'relative' });
		} else {
			new Effect.Move($("slider"), { x: 0, mode: 'absolute' });
		}
		setTimeout('finished = true', 1000);
	}
}

function slide_left() {
	if(finished){ // Giving previous animation time to finish before running again, out of sync.
		finished = false;
		
		var xpos = $('slider').style.left;
		if(xpos != '0px' && xpos != '') {
			new Effect.Move($("slider"), { x: 450, mode: 'relative' });
		} else {
			new Effect.Move($("slider"), { x: -2250, mode: 'absolute' });
		}

		setTimeout('finished = true', 1000);
	}
}
