var settings = {
    messages            : 'messages',
    messages_hide_delay : 1.5
};

function init(e)
{
    // check if the messages element exists and is visible, and if so, apply the highlight effect to it
    var messages = $(settings.messages);

    if (messages && messages.visible()) {
        new Effect.Highlight(messages);
    }
}

Event.observe(window, 'load', init);


// write status messages
function message_write(message)
{
    var messages = $(settings.messages);
    if (!messages)
        return;

    if (message.length == 0) {
        messages.hide();
        return;
    }

    messages.update(message);
    messages.show();
    new Effect.Highlight(messages);
}


// clear status messages
function message_clear()
{
    setTimeout("message_write('')", settings.messages_hide_delay * 1000);
}


// slideshow
function slideshow(div, start, last, interval) {

	var frame = start;
	var nextframe = start+1;

	if (last > 1) {
		Effect.Appear(div + '1',{duration:.5,from:0.0,to:1.0});
			setInterval(function() {
				Effect.Fade(div + frame, {duration: .5, from: 1.0, to: 0.0, afterFinish: function() {
					$(div + frame).hide();
					Effect.Appear(div + nextframe, {duration: .5, from: 0.0, to: 1.0});
				frame = nextframe;
				nextframe = (frame == last) ? start : nextframe + 1;
			}});
		}, interval);
	}
	
	return;
}
