function locationClick(event) {
	if (this.hasClass('selectOpen')) {
		locationBlur.call(this);
	} else {
		this.addClass('selectOpen');
	}
	new Event(event).stopPropagation();
}
function locationBlur(event) {
	this.removeClass('selectOpen');
}
function locationSelect(event) {
	if (!(this.get('id') == 'message' || this.hasClass('selected'))) {
		$$('#location ul li.selected').removeClass('selected');
		this.addClass('selected');
		document.body.fireEvent('languageChanged', this.get('id'));
	}
}

window.addEvent('domready', function() {
	var location = $$('#location ul')[0];
	location.addEvent('click', locationClick.bindWithEvent(location));
	location.addEvent('blur', locationBlur.bindWithEvent(location));
	$(document.body).addEvent('click', locationBlur.bindWithEvent(location));
	$$('#location ul li').each(function(option) {
		option.addEvent('click', locationSelect.bindWithEvent(option));
	});
});