$(document).ready(commonInit);

function commonInit() {

	/* ie6 fix */
	if ($.browser.msie && $.browser.version.substr(0, 1) == "6")
		ie6fix();
	/* ie6 fix */

	var menu = $('#zone-list-menu ul li');

	$(menu[0]).click(function() {
		$(menu[1]).removeClass('selected');
		$(menu[0]).addClass('selected');
		$('#category-list').hide();
		$('#zone-list').show();
	});

	$(menu[1]).click(function() {
		$(menu[1]).addClass('selected');
		$(menu[0]).removeClass('selected');
		$('#zone-list').hide();
		$('#category-list').show();
	});

}

function openLanguages() {
	$('#languages-list').show();
	$('#selected-language')[0].href = 'javascript:closeLanguages();';
	$('#selected-language-icon')[0].href = 'javascript:closeLanguages();';
}

function closeLanguages() {
	$('#languages-list').hide();
	$('#selected-language')[0].href = 'javascript:openLanguages();';
	$('#selected-language-icon')[0].href = 'javascript:openLanguages();';
}

function selectLanguage(code) {

	$.ajax({
		url : '/languages/' + code,
		success : function(data) {
		},
		error : function(request, textStatus) {
		}
	});

	window.location.reload();

	return false;
}

/* ie6fix */
function ie6fix() {
	$('#middle-content')[0].style.width = '943px';
	$('#rotative-image-border').hide();
	$('#checkin-input input')[0].style.width = '80px';
	$('#checkout-input input')[0].style.width = '80px';
	$('.home-banner-corner').hide();
}
/* ie6fix */

function showMessage(overlay, message) {

	if (overlay == null) {
		overlay = new Overlay();
		overlay.show();
	}

	var win = new OverWindow(400, 100, overlay);

	var div0 = document.createElement('div');
	div0.id = 'login-form-error';
	win.content = div0;

	var br = document.createElement('br');
	$(div0).append(br);
	var span = document.createElement('span');
	$(div0).append(span);
	$(span).text(message);

	win.show(function() {
	});

}

/* Map */

var Map = function() {

	this.store = new Array();
	this.keys = new Array();
	this.put = function(key, value) {
		var item = this.getItem(key);
		if (item == null) {
			item = [ key, value ];
			this.store.push(item);
			this.keys.push(key);
		} else {
			item[1] = value;
		}
	};
	this.get = function(key) {
		var item = this.getItem(key);
		var value = item != null ? item[1] : null;
		return value;
	};
	this.getItem = function(key) {
		var item = null;
		for ( var i = 0; i < this.store.length && item == null; i++) {
			if (this.store[i][0] == key)
				item = this.store[i];
		}
		return item;
	};
	this.toString = function() {
		var s = '{';
		for ( var i = 0; i < this.store.length; i++) {
			var item = this.store[i];
			s += item[0] + ': ' + item[1];
			if (i < this.store.length - 1)
				s += ', ';
		}
		return s + '}';
	};
};
