var alpha = 0;
var show_handle = null;
var hide_handle = null;
var speed       = 20; 

function changeFilter(obj, num)
{ 
    if (obj) 
    {
        obj.style.filter  = "Alpha(Opacity=" + num + ")"; 
        obj.style.opacity = num / 100; 
    }
}

function showTip(id)
{ 
    try 
    {	
        var obj = document.getElementById(id);    

        if (alpha < 100 + speed) 
        {
            alpha += speed;
            changeFilter(obj, alpha);
        } 

        if (alpha >= 100) 
        {
            clearInterval(show_handle); 
			show_handle = null;
        }  
    } 
    catch (e) 
    {
    }
}

function hideTip(id)
{ 
    try 
    {
        var obj = document.getElementById(id);        

        alpha = 0;
        changeFilter(obj, 0);
        clearInterval(hide_handle); 
		hide_handle = null;
    } 
    catch (e) 
    {
    }
} 

function show(id)
{
    try 
    {
        hideAll(id);

        alpha   = 0;
        var obj = document.getElementById(id);
        if (null == obj) return;
				
        var info_id = id + "_info"; 
        var obj_info = document.getElementById(info_id);
        if (null == obj_info || "" == obj_info.innerHTML)  return; 
        		
        obj_info.style.left = getL(id) + getOW(id) + 2 + "px";//158 + "px";
        obj_info.style.top = getT(id) + 2 + "px";
        obj_info.style.display = "block";
        
		
        if (show_handle) 
        {
			clearInterval(show_handle);
			show_handle = null;			
        }

        if (alpha <= 100) 
        {   
		    show_handle = setInterval(function() { showTip(info_id);}, 1);        
        }
    } 
    catch (e) 
    {
    }
}

function hide(id)
{ 
    try 
    {
        var info_id = id + "_info";         
        var obj_info = document.getElementById(info_id);
        if (null != obj_info) obj_info.style.display = "none";
                

        if (alpha > 0) 
        {
            hide_handle = setInterval("hideTip('" + info_id + "')", 1);
        }
    } 
    catch (e) 
    {
    }
}

function defaultFocus(id)
{
    var objs = document.getElementsByTagName("input");  

    for (var i = 0; i < objs.length; i++) 
    {
        var obj = objs[i];

        if (obj.className == 'focus') 
        {
            break;
        }
    }

    if (i == objs.length) 
    {
        document.getElementById(id).select();
    }
}

function hideAll(id)
{   
    var objs = document.getElementsByTagName("input");  

    for (var i = 0; i < objs.length; i++) 
    {
        var obj      = objs[i];

        if (id != obj.id) 
        {   
            var info_id  = obj.id + '_info';
            var obj_info;
            
            try 
            {
                obj_info = document.getElementById(info_id);
                if (null == obj_info)
                {
    	            continue;  
                }
            } 
            catch (e) 
            {
    	        continue;            
            }         

            if (obj_info && (obj_info.style.display == '' || obj_info.style.display == 'block')) 
            {
                changeFilter(obj_info, 0);
                obj_info.style.display = 'none';               
            }
        }
    }
}

function divOnclick(event, id)
{
    try 
    {   
        div_obj = window.event.srcElement;   
    } 
    catch (e) 
    { 
        div_obj = event.target  
    }

    if ((!id || id=='undefined') && (div_obj.nodeName).toLowerCase() != "input")
    {
		hideAll(id);
    }
}
 
 function  getL(id)
 {  
     var e = document.getElementById(id);
     var  l = e.offsetLeft;  
     while(e = e.offsetParent)
     {  
         l += e.offsetLeft;
     }  
     return  l;  
}  

function  getOW(id)
 {  
     var e = document.getElementById(id);
     var  l = e.offsetWidth; 
     return  l;  
}  
 
 function  getT(id)
{  
    var e = document.getElementById(id);	
    var  t = e.offsetTop;  
    while(e = e.offsetParent)
    {  
        t += e.offsetTop;
    }
    return t;  
} 
 
function  getOH(id)
{  
    var e = document.getElementById(id);	
    var  t = e.offsetHeight;
    return t;  
} 
