var sub_slide_pos = 1;
var slide_pos = 1;

//------------------------------
function move_sub_slide(slide) {
	var x1 = (-400*(slide-1));
	new Effect.Move('slide_sub', { x: x1, y: 0, duration: 0.8, mode: 'absolute', queue: 'end' });
	sub_slide_pos = slide;
}

//------------------------------
function move_slide(slide) {
	var x1 = (-403*(slide-1));
	
	case_pics_cancel();

	//$('after_'+slide_pos).setOpacity(0);
	//$('before_'+slide_pos).setOpacity(100);
	slide_pos = slide;
	if($('after_'+slide_pos)) $('after_'+slide_pos).setOpacity(0);
	if($('before_'+slide_pos)) $('before_'+slide_pos).setOpacity(100);

	new Effect.Move('slide', { x: x1, y: 0, duration: 0.8, mode: 'absolute', queue: 'end' });
	if( $('after_'+slide_pos) && $('before_'+slide_pos) ) case_pics();
}

//------------------------------
function case_pics_cancel() {
	var queue = Effect.Queues.get('before_after');
	queue.each(function(effect) { effect.cancel(); });
}

//------------------------------
function case_pics() {
	new Effect.Opacity('before_'+slide_pos, { from: 1, to: 0, duration: .8, queue: { position: 'end', scope: 'before_after'}, delay: 3.3 });
	new Effect.Opacity('after_'+slide_pos, { from: 0, to: 1, duration: .8, queue: { position: 'end', scope: 'before_after'}, delay: 0 });
	new Effect.Opacity('after_'+slide_pos, { from: 1, to: 0, duration: .8, queue: { position: 'end', scope: 'before_after'}, delay: 3.3 });
	new Effect.Opacity('before_'+slide_pos, { from: 0, to: 1, duration: .8, queue: { position: 'end', scope: 'before_after'}, delay: 0, afterFinish: case_pics });
}
