function FlashMessenger() {
	this._messages = new Array();
}
FlashMessenger.prototype.add = function(m) {
	this._messages.push(m);
}
FlashMessenger.prototype.getMessages = function() {
	return this._messages;
}
FlashMessenger.prototype.hasMessages = function() {
	return this._messages.length > 0;
}
FlashMessenger.prototype.getMessageString = function(html) {
	var str = html ? '<ul>' : '';
	for(var i in this._messages) {
		str += (html ? '<li>' : '- ') + this._messages[i] + (html ? '</li>' : '\n');
	}
	str += html ? '</ul>' : '';
	return str;
}
FlashMessenger.prototype.alert = function() {
	$('#messenger div').html(this.getMessageString(true));
	$('#messenger').show();
	
	locationStr = location.href.replace('#messenger', '');
	location.href = locationStr + '#messenger';
	this._messages = new Array();
}

FlashMessenger.prototype.confirm = function(str) {
	if(confirm(str + '\n' + this.getMessageString())) {
		this._messages = new Array();
		return true;	
	} else {
		this._messages = new Array();
		return false;
	}
}
var flashMessenger = new FlashMessenger();