
var skype_tool=null;
var skype_curid=0,skype_active=false,skype_showseed=0,skype_ctm=0;
function HideSkype()
{
  if(!skype_active)
    HideSkypeFull();
  else
    setTimeout("HideSkype()",2000);
}

function HideSkype2()
{
  skype_showseed=0;
  if(!skype_active)
    HideSkypeFull();
  else {
    skype_active=false;
	setTimeout("HideSkype()",6000);
  }
}

function HideSkypeFull()
{
   skype_active=false;
   document.getElementById('skype_menu').style.visibility="hidden";
}

function CheckSkype()
{
   skype_active=true;
}

function ShowSkype(event, call_msg, id,sadd,skypeout,name,title,stat)
{
  skype_active=true;
  if(document.getElementById('skype_menu').style.visibility!="hidden" && skype_curid==id)
    return;
  skype_showseed=Math.random();
  clearTimeout(skype_ctm);
  var brd=getBounds(event.originalTarget);
  var pcx=brd.left-2, pcy=brd.top-22;
  skype_ctm=
    setTimeout('DoShowSkype(\''+call_msg+'\','+skype_showseed+','+id+','+sadd+','+skypeout+',"'+name+'","'+title+'",'+stat+','+event.clientY+','+event.clientX+','+pcx+','+pcy+')',200);
}

function DoShowSkype(call_msg,seed,id,sadd,skypeout,name,title,stat,cY,cX,pcx,pcy)
{
  if(seed!=skype_showseed)
    return;
  skype_showseed=0;
  skype_curid=name;//id;
  var menu=document.getElementById('skype_menu');
  menu.style.visibility="visible";

  var m_name=new String(name);
  if(name.length>16)
    m_name=m_name.substring(0,13)+'...';
  document.getElementById('name_text').innerHTML=prepareText(call_msg,"Call%",m_name);//innerText//"%callto%","%call%"

  var docelem = document.documentElement;
  if ((docelem.scrollTop == 0 && document.body.scrollTop != 0) || (docelem.scrollLeft == 0 && document.body.scrollLeft != 0))
  	docelem=document.body;

  scrollY=docelem.scrollTop;
  scrollX=docelem.scrollLeft;
       //+scrollY  +scrollX
  var my=pcy, mx=pcx, mby=docelem.clientHeight+scrollY, mbx=docelem.clientWidth-192+scrollX;
  if(my>mby) my=mby;
  if(my<scrollY) my=scrollY;
  if(mx>mbx) mx=mbx;
  if(mx<scrollX) mx=scrollX;

  menu.style.left=mx+'px';
  menu.style.top=my+'px';

}

function doRunCMD(link,id)
{
  if (skype_tool)
  	skype_tool.call(id);
}
function runCMD(link)
{
  HideSkypeFull();
  doRunCMD(link, skype_curid);
}

function prepareText(act1,act2,param)
{
  if(param.length>0)
  {
    var s=new String(act1);
    s=s.replace("%s",param);
    return s;
  }
  return act2;
}

function skype_tb_imgAlt(imgName,act1,act2,title)
{
  if(document.images)
	document[imgName].alt=prepareText(act1,act2,title);
}

function skype_tb_imgDoOnOff(imgName,id,onoff)
{
  document[imgName+id].src=document[imgName+onoff].src;
}

function skype_tb_imgOnOff(e,onoff,id)
{
  if(document.images)
  {
    skype_tb_imgDoOnOff('skype_tb_img_l',id,onoff);
    skype_tb_imgDoOnOff('skype_tb_img_r',id,onoff);
    skype_tb_imgDoOnOff('skype_tb_img_i',id,onoff);
	var node=e.originalTarget;
	if (node.tagName.toLowerCase() == 'span')
    {
        if (node.getAttribute('id') == '__skype_highlight_id_inner')
        	node.setAttribute('class', (onoff=='_on')?'skype_tb_injectionInAct':'skype_tb_injectionIn');
        else if (node.getAttribute('id') == '__skype_highlight_id' && node.childNodes.item(2) && node.childNodes.item(2).getAttribute('id') == '__skype_highlight_id_inner')
        	node.childNodes.item(2).setAttribute('class', (onoff=='_on')?'skype_tb_injectionInAct':'skype_tb_injectionIn');
	}
  }
}

function getBounds(element)
{
  var left = element.offsetLeft;
  var top = element.offsetTop;
  for (var parent = element.offsetParent; parent; parent = parent.offsetParent)
  {
    left += parent.offsetLeft;
    top += parent.offsetTop;
  }
  return {left: left, top: top, width: element.offsetWidth, height: element.offsetHeight};
}

function SkypeToolBarInit(tb)
{                   
	skype_tool=tb;
}