﻿// JScript File
Type.registerNamespace("Demo");
        
Demo.ToolTip=function(panelid)
{
    this._panelid=panelid;
    this.x=0;
    this.y=0;
    this.horizontal_offset="-3px"
    this.ie4=document.all
    this.ns6=document.getElementById&&!document.all
}

Demo.ToolTip.prototype=
{
    get_PanelID:function()
    {
        return this._panelid;
    },
    
    set_PanelID:function(panelid)
    {
        this._panelid=panelid;
    },
    
    
    
    BeginShowToolTip:function(obj,event,menuid)
    {
        nobj=obj;
        nevent=event;
        nmen=menuid;
        this._byplayerid=false;
        timeid=setTimeout("tooltip.StartShowToolTip(nobj,nevent,nmen)",800);
    },
    
    BeginShowToolTipPID:function(obj,event,menuid)
    {
        nobj=obj;
        nevent=event;
        nmen=menuid;
        this._byplayerid=true;
        timeid=setTimeout("tooltip.StartShowToolTip(nobj,nevent,nmen)",800);
    },
    
    
    StartShowToolTip:function(obj,event,menuid)
    {
        window.clearTimeout(timeid);
        this._lastobj=obj;
        var pnl=$get(this.get_PanelID());
        pnl.style.visibility="visible";
        pnl.style.display="inline";
        pnl.style.position="absolute";
        
        pnl.x=this.getposOffset(this._lastobj, "left");
        pnl.y=this.getposOffset(this._lastobj, "top");
        //-this.clearbrowseredge(this._lastobj, "rightedge")
        pnl.style.left=(pnl.x-45)+"px";
        //-this.clearbrowseredge(this._lastobj, "bottomedge")
        pnl.style.top=(pnl.y-166+this._lastobj.offsetHeight)+"px"
           
        if (menuid!=this._lastid) {
        //menuid,
            this._lastid=menuid;
            pnl.innerHTML="<img src='nimg/busy.gif' align='left' style='margin-right:4px;'>Daten werden geladen ...";
            if (this._byplayerid==false) {
                Polit.AJWS.GetMemberToolTipText(menuid,this.EndShowToolTip,this.OnError,this.OnTimeOut);
            } else {
                Polit.AJWS.GetMemberToolTipTextByPlayerID(menuid,this.EndShowToolTip,this.OnError,this.OnTimeOut);
            }
        } else {
            
        }
    },
    
    EndShowToolTip:function(result)
    {
        
        var pnl=$get(tooltip.get_PanelID());
        if (result!=undefined) {
            pnl.innerHTML=result;
            /*if(pnl.innerText!=null)
            {
                result = result.replace(/&gt;/g,'>');
                result = result.replace(/&gtx;/g,'&gt;');
                result = result.replace(/&lt;/g,'<');
                result = result.replace(/&ltx;/g,'&lt;');
                alert(result);
                
            }
            else
            {
                pnl.textContent=result;
            }*/
        }
        //pnl.style.visibility="visible";
        //pnl.style.display="inline";
        //pnl.style.position="absolute";
        //pnl.style.left= tooltip.x + "px";
        //pnl.style.top= tooltip.y + "px";
        
        //pnl.x=this.getposOffset(this._lastobj, "left")
        //pnl.y=this.getposOffset(this._lastobj, "top")
        //pnl.style.left=(tooltip.x-this.clearbrowseredge(this._lastobj, "rightedge")-40)+"px"
        //pnl.style.top=tooltip.y-150-this.clearbrowseredge(this._lastobj, "bottomedge")+this._lastobj.offsetHeight+"px"
    },
    
    HideToolTip:function()
    {
        window.clearTimeout(timeid);
        var pnl=$get(this.get_PanelID());
        pnl.style.visibility="hidden";
        pnl.style.display="none";
    },
    
   OnError:function(result)
   {
        alert(result.get_message());
   },         
   
   OnTimeOut:function(result)
   {
        alert(result);
   },
   
   getposOffset:function(what, offsettype){
    var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
    var parentEl=what.offsetParent;
    while (parentEl!=null){
    totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
    parentEl=parentEl.offsetParent;
    }
    return totaloffset;
   },
   
   iecompattest:function(){
    return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
    },
   
    clearbrowseredge:function(obj, whichedge){
        
        var pnl=$get(this.get_PanelID());
        var edgeoffset=(whichedge=="rightedge")? parseInt(this.horizontal_offset)*-1 : parseInt(0)*-1
        if (whichedge=="rightedge"){
        var windowedge=this.ie4 && !window.opera? this.iecompattest().scrollLeft+this.iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15       
        pnl.contentmeasure=pnl.offsetWidth
        if (windowedge-pnl.x < pnl.contentmeasure)
        edgeoffset=pnl.contentmeasure-obj.offsetWidth
        }
        else{
        var windowedge=this.ie4 && !window.opera? this.iecompattest().scrollTop+this.iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
        pnl.contentmeasure=pnl.offsetHeight
        if (windowedge-pnl.y < pnl.contentmeasure)
        edgeoffset=pnl.contentmeasure+obj.offsetHeight
        }
        return edgeoffset
    }   
   
}

Demo.ToolTip.registerClass("Demo.ToolTip",Sys.UI.Control);


var tooltip=null;   
var timeid=null; 
function pageLoad()
{
    tooltip=new Demo.ToolTip("ctl00_ContentPlaceHolder1_Panel1");
    tooltip.HideToolTip();
}

