eDuration = 0.4;

function doSlide(dir, eleId) {
	if(dir == 'up') {
		$(eleId).sliding = true;
		$(eleId).folded = true;
		Effect.SlideUp($(eleId), {
			duration: eDuration,
			//queue: {position: 'end', scope: 'menu', limit:2},
			afterFinish: $(eleId).endSliding
		});
	} else if(dir == 'down') {
		$(eleId).sliding = true;
		$(eleId).folded = false;
		Effect.SlideDown($(eleId), {
			duration: eDuration,
			//queue: {position: 'end', scope: 'menu', limit:2},
			afterFinish: $(eleId).endSliding
		});
	}
}

function slide(eleId) {
	if($(eleId).sliding == false) {
		if($(eleId).folded == true) {
			//zavrena paletka
			doSlide('down', eleId);
		} else if($(eleId).folded == false) {
			//otevrena paletka
			if($(eleId).over == false)doSlide('up', eleId);
		}
	}
}

function setTimeSlide(eleId) {
	$(eleId).timeout = window.setTimeout('slide(\''+eleId+'\')', 100);
}

function setupPallete(idPallete, idTrigger) {
	$(idPallete).sliding = false;
	$(idPallete).folded = false;
	$(idPallete).over = false;
	$(idPallete).timeout = null;
	$(idPallete).endSliding = function() {
		$(idPallete).sliding = false;
	}

	$(idPallete).setStyle({
		visibility: 'hidden',
		opacity: 0.9
	});
	slide(idPallete);

	$(idTrigger).observe('mouseover', function(){
		$(idPallete).over = true;
		$(idPallete).setStyle({
			visibility: 'visible'
		});
		slide(idPallete);
	});

	$(idTrigger).observe('mouseout', function(){
		$(idPallete).over = false;
		$(idPallete).setStyle({
			visibility: 'visible'
		});
		setTimeSlide(idPallete)
	});

	$(idPallete).observe('mouseover', function(){
		$(idPallete).over = true;
	});

	$(idPallete).observe('mouseout', function(){
		$(idPallete).over = false;
		setTimeSlide(idPallete)
	});
}

Event.observe(window, 'load', function() {
	if(
	$(lang+'Restaurants') && $('indexRestaurantsPallete')
	&& $(lang+'Catering') && $('indexCateringPallete')
	&& $('zatisiGroupLogo') && $('indexGroupPallete')
	) {
		setupPallete('indexRestaurantsPallete', lang+'Restaurants');
		setupPallete('indexCateringPallete', lang+'Catering');
		setupPallete('indexGroupPallete', 'zatisiGroupLogo');
	}
});