// ddmenu.js
//
// Havresoft
// Havresoft Team
// Copyright (c) 2010, Havre Corporation
// 
// January 18, 2011
//
var timeOut = 100;
var fadeSpeed = 200;
var useFade = true;

var time = new Array();
var state = new Array();
var endOpacity = new Array();

var msie = false;
if(navigator.appName == "Microsoft Internet Explorer")
	msie = true;

function showMenu(id){
	var e = document.getElementById(id);
	e.style.visibility = "visible";
	state[id] = true;
	startOpacity(id,1);
	
	if(time[id]){
		clearTimeout(time[id]);
		time[id]= undefined;
	}
}

function hideMenu(id){
	var e = document.getElementById(id);
	e.style.visibility = "hidden";
	state[id] = false;
	
	if(useFade)
		startOpacity(id,1);
}

function clearMenu(id){
    if(useFade) 
		time[id] = setTimeout( 'fadeMenu( "' + id + '" )', timeOut );
    else 
		time[id] = setTimeout( 'hideMenu( "' + id + '" )', timeOut );
}

function startOpacity(id,value){
	var e = document.getElementById(id);
	
	if(state[id])
		value = 1;
	else if(endOpacity[id] && (endOpacity[id] < value))
		value = endOpacity[id];
	
	if(msie)
		e.style.filter = 'alpha(opacity=' + value * 100 + ')';
	else
		e.style.opacity = (value);
	
	if(value == 0)
		hideMenu(id);
	
	endOpacity[id] = value;
}

function fadeMenu(id){
	var start = 0;
	var end = 0;
	var speed = Math.round(fadeSpeed / 25);
	var timer = 0;
	
	state[id] = false;
	
	for(var i=speed;i>=0;i--) {
		setTimeout("startOpacity('" + id + "'," + ( i / speed ) + ")", timer++ * fadeSpeed / speed);
	}
}

