var isIE = window.ActiveXObject?true:false;
var _dvToolTipId = "tooltipDiv";
var __TooltipElement = null;
var _eventset = false;
function setStyle(ele,style) 
{
  for (p in style)
    {ele.style[p] = style[p];}
}

function getStyle(ele,name) {
var style = ele.currentStyle?ele.currentStyle:document.defaultView.getComputedStyle(ele,null);
return style[name];
}

function initToolTip()
{
    var a = GetTooltipElement();
}

function GetTooltipElement()
{
    __TooltipElement = $get(_dvToolTipId);
    if( __TooltipElement == null )
    {
        __TooltipElement = document.createElement("div");	
	   
	    __TooltipElement.id = _dvToolTipId;
	    document.body.appendChild(__TooltipElement);
	}    
	if( !_eventset )
	{
        __TooltipElement.className = "EventToolTips";
        Sys.UI.DomEvent.addHandler(__TooltipElement,"mouseover",function(){status[_dvToolTipId]=true;});
        Sys.UI.DomEvent.addHandler(__TooltipElement,"mouseout",hideTip);
        $common.setVisible(__TooltipElement, false);
        _eventset = true;
    }
    return __TooltipElement;
}

 function setOpacity(ele,value) {
    if (isIE) setStyle(ele,{"filter":"alpha(opacity:" + Math.round(value*100) + ")"});
    else setStyle(ele,{"opacity":value});
 }

 function getOpacity(ele) {
    var opacity;
    if (isIE) {
     opacity = getStyle(ele,"filter");
     opacity = parseFloat(stripAlpha(opacity))/100;
    } else {
     opacity = parseFloat(getStyle(ele,"opacity"));
    }
    return opacity;
 }

 var status = [];
 function fadeIn(ele) {
    if (!status[ele.id]) return;
    var currentOpacity = getOpacity(ele);
    if (currentOpacity >= 1) {
     setOpacity(ele,1);
     return;
    } else {
     setOpacity(ele,currentOpacity + 0.02);
     setTimeout(function (){fadeIn(ele);},10);
    }
 }

 function fadeOut(ele) {
    if (status[ele.id]) return;
    
    var currentOpacity = getOpacity(ele);
    if (currentOpacity <= 0.01) {
     setOpacity(ele,0);
     $common.setVisible(ele, false);
     return;
    } else {
     setOpacity(ele,currentOpacity - 0.02);
     setTimeout(function (){fadeOut(ele);},10);
    }
 }

 function showTip(obj) 
 {
    var ele = GetTooltipElement();
    ele.innerHTML = obj.getAttribute("summary");
    status[_dvToolTipId] = true;
    setOpacity(ele,0.0);
    $common.setVisible(ele, true);
    var bTarget = Sys.UI.DomElement.getBounds(obj);
    var iLeft = bTarget.x + bTarget.width;
	var iTop = bTarget.y+bTarget.height + 10;
    Sys.UI.DomElement.setLocation(ele, iLeft, iTop)
    fadeIn(ele);
 }

 function hideTip() {
    status[_dvToolTipId] = false;
    setTimeout(function (){fadeOut($get(_dvToolTipId));},100);
 }

 function stripAlpha(opacity) {
    var index = opacity.indexOf("opacity") + "opacity:".length;
    var endIndex = opacity.indexOf(",",index) == -1 ? opacity.indexOf(")",index)
            : opacity.indexOf(",",index);
    
    var ret = opacity.substring(index,endIndex);
    return ret;
 }