/*
 * Менюшка.
 */
window.addEvent('domready', function(){
	/*
	 * хак для "правильной" оперы
	 * пишем ссылки для горизонтальных книжек
	 */
	$$('.submenu1').hide();
	$('link_good_dictionary').addEvent('click', function(){
		location.href = '/vocabulary/';
	});
	$('link_sign_catalogue').addEvent('click', function(){
		location.href = '/badges/';
	});
	//убираем все теньки и отображаем только нужную теньку
	//а нужная тенька должна появиться под книжечкой, у которой стоит класс селектед
	$$('.shadow').addClass('hide');
	try {
		//находим ту самую заветную книжечку... ну, если она есть
		var selected_book = $$('#menu .selected');
		//вычисляем айдишник теньки, которую нужно показать
		var selected_book_id = selected_book.get('id')[0];
		var shadow_id = 'shadow_' + selected_book_id.match(/^link_([a-z_]+)/)[1];
		$(shadow_id).removeClass('hide');
	}
	catch (e) {
	}
	//Скрываем все подменюшки
	try {
		$$('.submenu2').hide();
	}
	catch (e) {
	}

	//массив с книжками
	var books = [$('link_trade'), $('link_food'), $('link_cookery'), $('link_supply')];
	//массив с подменю книжек. Приведено в парядке книжек
	var submenus1 = [$('submenu1_trade'), $('submenu1_food'), $('submenu1_cookery'), $('submenu1_supply')];
	//запоминаем в книжку ее подменю
	for (var i = 0; i < 4; i++) {
		books[i].store('submenu', submenus1[i]);
	}// $('submenu1_trade').show(); $$('.submenu2')[0].show();
	//при наведении курсора происходит чудо
	books.each(function(book){
		var hide1;
		book.addEvents({
			'click': function(e){
				var e = new Event(e);
				e.stop();
			},
			'mouseenter': function(){
				submenus1.each(function(subm){
					subm.hide();
				});
				if (hide1) {
					$clear(hide1);
				}
				this.retrieve('submenu').show('block');
			},
			'mouseleave': function(){
				hide1 = this.retrieve('submenu').hide.delay(300, this.retrieve('submenu'));
			}
		});
		var submenu = book.retrieve('submenu');
		submenu.addEvents({
			'mouseenter': function(){
				if (hide1) {
					$clear(hide1);
				}
			},
			'mouseleave': function(){
				$$('.submenu2').hide();
				hide1 = this.hide.delay(300, this);
			}
		});
		var submenu2_links = submenu.getElements('li.has_submenu > a');
		submenu2_links.each(function(lnk){
			var hide2;
			lnk.addEvents({
				'click': function(e){
					var e = new Event(e);
					e.stop();
				},
				'mouseenter': function(){
					if (hide2) {
						$clear(hide2);
					}
					$$('.submenu2').hide();
					this.getNext().show('block');
				},
				'mouseleave': function(){
					hide2 = this.getNext().hide.delay(300, this.getNext());
				}
			});
			lnk.getNext().addEvents({
				'mouseenter': function(){
					if (hide1) {
						$clear(hide1);
					}
					if (hide2) {
						$clear(hide2);
					}
					this.show('block');
				},
				'mouseleave': function(){
					hide2 = this.hide.delay(300, this);
				}
			});
		});
	});
});
