slideMenu.Registry = [];
slideMenu.enableSlide = false;

function slideMenu(id,numLines,parentID) {
	slideMenu.Registry[id] = [];
	slideMenu.Registry[id]['height']       = 1;
	slideMenu.Registry[id]['containerObj'] = document.getElementById(id+"Container");
	slideMenu.Registry[id]['contentObj']   = document.getElementById(id+"Content");
	slideMenu.Registry[id]['interval']     = null;
	slideMenu.Registry[id]['timeout']      = null;

	slideMenu.Registry[id]['parent']      = parentID;

	if(slideMenu.enableSlide)
	{
		if(parentID != "")
			slideMenu.Registry[id]['maxHeight']    = (slideMenu.Registry[id]['containerObj'].scrollHeight * numLines) - (numLines - 1);
		else
			slideMenu.Registry[id]['maxHeight']    = (slideMenu.Registry[id]['containerObj'].scrollHeight * numLines) - (numLines - 1);
		slideMenu.Registry[id]['contentObj'].style.height  = '1px';
	}

	// slide down events
	slideMenu.Registry[id]['containerObj'].onmouseover = function() { slideMenu.showMenu(id); }
	slideMenu.Registry[id]['containerObj'].onfocus     = function() { slideMenu.showMenu(id); }

	// slide up events
	slideMenu.Registry[id]['containerObj'].onmouseout  = function() { slideMenu.hideMenu(id); }
	slideMenu.Registry[id]['containerObj'].onblur      = function() { slideMenu.hideMenu(id); }

	if(parentID != "")
	{
		// register events for sub menu content fields
		// slide down events
		slideMenu.Registry[id]['contentObj'].onmouseover = function() { slideMenu.showMenu(id); }
		slideMenu.Registry[id]['contentObj'].onfocus     = function() { slideMenu.showMenu(id); }

		// slide up events
		slideMenu.Registry[id]['contentObj'].onmouseout  = function() { slideMenu.hideMenu(id); }
		slideMenu.Registry[id]['contentObj'].onblur      = function() { slideMenu.hideMenu(id); }
	}
}

slideMenu.showMenu = function(id) {
	clearInterval(slideMenu.Registry[id]['interval']);
	slideMenu.Registry[id]['contentObj'].style.display = 'block';
	slideMenu.Registry[id]['contentObj'].style.zIndex += 10;
	slideMenu.Registry[id]['interval'] = window.setInterval("slideMenu.slideDown('"+id+"')",1);
}

slideMenu.hideMenu = function(id) {
	clearInterval(slideMenu.Registry[id]['interval']);
	slideMenu.Registry[id]['contentObj'].style.zIndex = 10;
	slideMenu.Registry[id]['interval'] = window.setInterval("slideMenu.slideUp('"+id+"')",1);
}

slideMenu.slideDown = function(id) {
	if(!slideMenu.enableSlide)
	{
		clearInterval(slideMenu.Registry[id]['interval']);
		return;
	}

	for(var i=0;i<15;i++) {
		if(slideMenu.Registry[id]['height'] >= slideMenu.Registry[id]['maxHeight']) {
			clearInterval(slideMenu.Registry[id]['interval']);
		} else {
			slideMenu.Registry[id]['contentObj'].style.height = slideMenu.Registry[id]['height']+'px';
			slideMenu.Registry[id]['height'] ++;
		}
	}
}

slideMenu.slideUp = function(id) {
	if(!slideMenu.enableSlide)
	{
		clearInterval(slideMenu.Registry[id]['interval']);
		slideMenu.Registry[id]['contentObj'].style.display = 'none';
		return;
	}

	for(var i=0;i<15;i++) {
		if(slideMenu.Registry[id]['height'] <= 1) {
			clearInterval(slideMenu.Registry[id]['interval']);
			slideMenu.Registry[id]['contentObj'].style.display = 'none';
		} else {
			slideMenu.Registry[id]['contentObj'].style.height = slideMenu.Registry[id]['height']+'px';
			slideMenu.Registry[id]['height'] --;
		}
	}
}

