// Новый элемент 
function subMenuItem(key, text, url, target) {
	this.key = key;
	this.text = text;
	this.url = url;
	this.target = target;
	return this;
}

// Пункты
smItems = new Array();
defSM = "";

function rememberDefaultSubMenu()
{
    elem = getElem("submenu");	
	if(elem) {
		defSM = elem.innerHTML;
	} 
}

function restoreDefaultSubMenu()
{
     elem = getElem("submenu");	
	if(elem) {
		elem.innerHTML = defSM;
	}
}

// Добавить пункт
function addSubMenuItem(key, text, url, target) {		
	smItems[smItems.length] = new subMenuItem(key, text, url, target);
}

function findItems(key)
{
	items = new Array();
	
	for(i=0; i<smItems.length; i++) {
		
		if(smItems[i].key == key) {
		    items[items.length] = smItems[i];
		}
	}
	
	return items;
}

function getElem(id) {

	elem = false;
	
	if(document.getElementById) {
	    elem = document.getElementById(id);
	}
	else if(document.all) { 
		elem = document.all[id];
	}
	else if(document.layers) {
	    elem = document.layers[id];
	}
	
	return elem;
}

function showSubMenu(items) {

	elem = getElem("submenu");	
	if(elem) {
		
		str = "";
		for(i=0; i<items.length; i++) {
			str += items[i].text + " ";
		}
		elem.innerHTML = str;
	}
}

var inactiveTimeOut;
var lobj;
var lkey;

function active(key, obj) {
	
	if(inactiveTimeOut) {
		clearTimeout(inactiveTimeOut);
		offMenu();
	}
	
	obj.className = 'amenuitem';
	
	elem = getElem(key);
	if(elem) {
	    elem.className = "amenu"
	}
	
	items = findItems(key);
	showSubMenu(items);
}

function offMenu()
{
	lobj.className = 'menuitem';
	
	elem = getElem(lkey);
	if(elem) {
	    elem.className = "menu"
	}
	
	restoreDefaultSubMenu();
}

function inactive(key, obj)
{
    lkey = key;
	lobj = obj;
	inactiveTimeOut = setTimeout("offMenu()", 300);
}