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');
	}

	var mbs = $$('div.multiBanner');

	mbs.each(function(s, index) {
		{
			var eles = new Array();
			s.descendants().each(function(s, index) {
				if(s.tagName == 'A') {
					eles.push(s);
				}
			});

			if(eles.length > 1) {
				eles.each(function(s, index) {
					$(s).setStyle({'display': 'none'});
				});

				var active = eles.length - 1;
				eles[active].setStyle({'display': 'block'});

				function setBanner() {
					window.setTimeout(function(){
						base = parseInt(active);
						active = active + 1;
						if(active > eles.length - 1) {
							active = 0;
						}
						active = parseInt(active);

						eles[active].setStyle({
							'display': 'block',
							'opacity': 0
						});

						new Effect.Parallel(
							[
								new Effect.Opacity(eles[base], {sync: true, from: 1.0, to: 0.0 }),
								new Effect.Opacity(eles[active], {sync: true, from: 0.0, to: 1.0})
							],
							{
								duration: 1,
								afterFinish: function(effect) {
									eles.each(function(s, index) {
										$(s).setStyle({
											'display': 'none',
											'opacity': 0
										});
									});

									eles[active].setStyle({
										'display': 'block',
										'opacity': 1
									});

									setBanner();
								}
							}
						);
					}, 4000);
				}

				setBanner();
			}
		}
	});
});
