
// ******************
// Объект-массив c информацией о меню
// ******************
var menuArray = {
	'index.php?url=armatura/catalog.php' : ["Судовая трубопроводная арматура"],
	'index.php?url=disel/23_30/model.php&cat=1' : ["Дизель-генераторы. Составные части"],
	'index.php?url=3A6DG49/model.php' : ["Дизель 3А-6ДГ49"],
	'index.php?url=disel/23_30/model.php&cat=2' : ["Дизели 6-84 1А 23/30 и 6-84 2А 23/30. Сборочные единицы и детали"],
	
	
	'index.php?url=zip/model.php&cat=1' : ["Дагдизель Каспийск 8,5/11"],
	'index.php?url=zip/model.php&cat=2' : ["Русский Дизель 8ДР43/61"],
	'index.php?url=zip/model.php&cat=3' : ["Русский Дизель ДРПН23х/30"],
	'index.php?url=zip/model.php&cat=4' : ["Русский Дизель ДР30/50"],
	'index.php?url=zip/model.php&cat=5' : ["Русский Дизель ЧН40/46"],
    'index.php?url=zip/model.php&cat=6' : ["Германия Магдебург SKL NVD 24"],
	'index.php?url=zip/model.php&cat=7' : ["Германия Магдебург SKL NVD 26"],
	'index.php?url=zip/model.php&cat=8' : ["Германия Магдебург SKL NVD 36"],
	'index.php?url=zip/model.php&cat=9' : ["Германия Магдебург SKL NVD 48"],
	'index.php?url=zip/model.php&cat=10' : ["Германия Магдебург SKL VD 26/20"],
	'index.php?url=zip/model.php&cat=11' : ["Германия Магдебург SKL VD 36/24"],
	
	'#' : ["Юждизельмаш 6Ч12/14 и 6ЧН12/14", {
		'index.php?url=catalog/model.php&cat=23' : ["К-457М1"],
		'index.php?url=catalog/model.php&cat=24' : ["К-958М1"],
		'index.php?url=catalog/model.php&cat=25' : ["К-470М1"],
		'index.php?url=catalog/model.php&cat=26' : ["К-970М1"],
		'index.php?url=catalog/model.php&cat=27' : ["К-462М1"],
		'index.php?url=catalog/model.php&cat=28' : ["К-464М1"],
		'index.php?url=catalog/model.php&cat=29' : ["К-161М1-1"],
		'index.php?url=catalog/model.php&cat=30' : ["К-161М1-2"],
		'index.php?url=catalog/model.php&cat=31' : ["К-161М1-3"],
		'index.php?url=catalog/model.php&cat=32' : ["К-164М1"],
		'index.php?url=catalog/model.php&cat=33' : ["К-171М1"],
		
		'index.php?url=catalog/model.php&cat=34' : ["К-471М1"],
		'index.php?url=catalog/model.php&cat=35' : ["К-166М1-1"],
		'index.php?url=catalog/model.php&cat=36' : ["К-166М1-2"],
		'index.php?url=catalog/model.php&cat=37' : ["К-166М1-3"],
		'index.php?url=catalog/model.php&cat=38' : ["К-159М1"],
		'index.php?url=catalog/model.php&cat=39' : ["К-657М1"],
		'index.php?url=catalog/model.php&cat=40' : ["К-268М1"],
		'index.php?url=catalog/model.php&cat=41' : ["К-369М1"],
		'index.php?url=catalog/model.php&cat=42' : ["К-264М1"],
		'index.php?url=catalog/model.php&cat=43' : ["К-858М1А1"],
		'index.php?url=catalog/model.php&cat=44' : ["К-858М1А2"],

        'index.php?url=catalog/model.php&cat=45' : ["К-259М1"],
		'index.php?url=catalog/model.php&cat=46' : ["К-259М1/1"],
		'index.php?url=catalog/model.php&cat=47' : ["К-661М1"],
		'index.php?url=catalog/model.php&cat=48' : ["К-763М1"],
		'index.php?url=catalog/model.php&cat=49' : ["К-461М1"],
		'index.php?url=catalog/model.php&cat=50' : ["К-169М1"],
		'index.php?url=catalog/model.php&cat=51' : ["К-270М1/1"],
		'index.php?url=catalog/model.php&cat=52' : ["К-270М1/2"],
		'index.php?url=catalog/model.php&cat=53' : ["К-272М1"],
		
		
		
		
		}]
		
}

// ******************
// Глобальные переменные для работы функций
// ******************
var menuWaitTimer = {};
var menuOpenedCount = 0;

// ******************
// Функция формирования HTML-кода меню и вывода на страницу
// ******************
function drawJSMenu(containerId, hash, path) {
	// ----------- Константы ------------
	var commonClassName = "common";
	var parentClassName = "parent";
	var levelClassPrefix = "level_";
	var menuWaitInterval = 500; // ms
	// ----------- Переменные ------------
	var container = document.getElementById(containerId);
	var html = _class = mouseOverOut = id = "";
	var i;
	var idArray = []
	// ----------- Функции ------------
	// Рекурсивная функция для прохождения по многоуровневому 
	// хэшу и формированию HTML-кода меню
	var cicleFunc = function(code, hash, level, parentId) {
		if (typeof level != "undefined" && level != 1) code += "<span id='b" + parentId + "' style='display:none;'>\n";
		for (i in hash) {
			var randId = parseInt(Math.random() * 1e10).toString() + parseInt(Math.random() * 1e10);
			_class = 
				((typeof hash[i][1] != "undefined") ? parentClassName : commonClassName) + 
				" " + levelClassPrefix + level;
			if (typeof hash[i][1] != "undefined") {
				id = " id='a" + randId + "'";
				idArray.push(randId);
			} else id = 0;
			code += "<a" + (id ? id : "") + " class='" + _class + "' href='" + path + i + "'>" + hash[i][0] + "</a>\n";
			if (typeof hash[i][1] != "undefined") code += cicleFunc(html, hash[i][1], level+1, randId);
		}
		if (typeof level != "undefined" && level != 1) code += "</span>\n";
		return code;
	}
	// ----------- Добавление HTML-кода меню на страницу ------------
	html = cicleFunc(html, hash, 1);
	container.innerHTML = html;
	// ----------- Добавление обработчиков событий ------------
	for (i = 0; i < idArray.length; i++) {
		document.getElementById("a" + idArray[i]).onmouseover = function() {
			menuOpenedCount++;
			var absId = this.id.substring(1, this.id.length);
			document.getElementById("b" + absId).style.display = "";
		}
		document.getElementById("a" + idArray[i]).onmouseout = function() {
			menuOpenedCount--;
			var absId = this.id.substring(1, this.id.length);
			if (typeof menuWaitTimer[absId] == "undefined" || menuWaitTimer[absId] == null) {
				menuWaitTimer[absId] = setInterval("hideJSMenu('" + absId + "')", menuWaitInterval);
			}
		}
		document.getElementById("b" + idArray[i]).onmouseover = function() {
			menuOpenedCount++;
			var absId = this.id.substring(1, this.id.length);
			if (typeof menuWaitTimer[absId] != "undefined") {
				clearInterval(menuWaitTimer[absId]);
				menuWaitTimer[absId] = null;
			}
		}
		document.getElementById("b" + idArray[i]).onmouseout = function() {
			menuOpenedCount--;
			var absId = this.id.substring(1, this.id.length);
			if (typeof menuWaitTimer[absId] == "undefined" || menuWaitTimer[absId] == null) {
				menuWaitTimer[absId] = setInterval("hideJSMenu('" + absId + "')", menuWaitInterval);
			}
		}
	}
}

// ******************
// Функция для убирания выпадушек, запускается по таймауту
// ******************
function hideJSMenu(id) {
	if (menuOpenedCount <= 0) {
		menuOpenedCount = 0;
		if (typeof menuWaitTimer[id] != "undefined") {
			clearInterval(menuWaitTimer[id]);

			menuWaitTimer[id] = null;
		}
		if (document.getElementById("b" + id)) {
			document.getElementById("b" + id).style.display = "none";
		}
	}
}

