function al(login, prv)
{
	AddTo(login, prv);
	return false;
}

function sml(smile)
{
	setFocus();
	cmd_form.text.value += ' :' + smile + ': ';
}

function ClipBoard(text)
{
	if (window.clipboardData)
	{
		window.clipboardData.setData('Text', text);
	}
	else
	{
		netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
		var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
		if (!clip) return;
		var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
		if (!trans) return;
		trans.addDataFlavor('text/unicode');
		var str = new Object();
		var len = new Object();
		var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
		var copytext=text;
		str.data=copytext;
		trans.setTransferData("text/unicode",str,copytext.length*2);
		var clipid=Components.interfaces.nsIClipboard;
		if (!clip) return false;
		clip.setData(trans,null,clipid.kGlobalClipboard);
	}
}

function CopyAll()
{
	var s = new Array();
	var o = chat1_container.firstChild;
	while (o)
	{
		if (o.tagName == 'FONT' && o.className != 'oMenu')
		{
			var o2 = o.firstChild;

			while (o2)
			{
				if (o2.tagName == 'FONT' && (o2.className == 'date' || o2.className == 'date2'))
				{
					s.push (EscPvtTo(o2.id));
				}

				o2 = o2.nextSibling;
			}
		}

		o = o.nextSibling;
	}
	
	
	var s2 = new Array();
	o = chat2_container.firstChild;
	while (o)
	{
		if (o.tagName == 'FONT' && o.className != 'oMenu')
		{
			var o2 = o.firstChild;

			while (o2)
			{
				if (o2.tagName == 'FONT' && (o2.className == 'date' || o2.className == 'date2'))
				{
					s2.push (EscPvtTo(o2.id));
				}

				o2 = o2.nextSibling;
			}
		}

		o = o.nextSibling;
	}
	var resulttxt = s.join("\r\n")+(s2.length?"\r\n--------\r\n":"")+s2.join("\r\n");
	ClipBoard(resulttxt );
}

function OpenMenu(event)
{
	var x, y, testy, testy2, login, login2, o;
	if (IE)
	{
		o = window.event.srcElement;
		x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft - 4;
		y = window.event.clientY + document.documentElement.scrollTop + document.body.scrollTop - 4;
		testy = window.event.clientY - 4;
	}
	else
	{
		o = event.target;
		x = event.pageX - 4;
		y = event.pageY - 4;
		testy = y - document.documentElement.scrollTop - document.body.scrollTop;
	}

	var el = $('oMenu');

	if (el)
		if (el.style.display == 'block' && el.o == o) {
			el.style.display = 'none';
			return false;
		}
	
	
	

	el.innerHTML = '';

	if (o.tagName == 'FONT' && (o.className == 'date' || o.className == 'date2'))
	{
		var message = o.id.split("\"").join("&quot;");
		var msgID = o.id.substr(0,8);
		if (Number('0x'+msgID)>0) {
			message = message.substr(8);
		} else {
			msgID ="";
		}
		el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick="AddText(EscPvtTo(\''+message+'\'));closeMenu();">'+mes_forward+'</a>';
		el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick=" Complain(\''+msgID+'\'); closeMenu();">'+mes_complain+'</a>';		
		el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick="ClipBoard(\''+message+'\');closeMenu();">'+mes_copy+'</a>';
		el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick="CopyAll();closeMenu();">'+mes_copyall+'</a>';
		if ((testy2 = document.body.clientHeight - testy) < el.clientHeight+2)
		{
			y -= el.clientHeight + 2 - testy2;
		}

		el.style.left = x + 'px';
		el.style.top = y + 'px';
		el.style.display = 'block';

		CEvent.add(document, 'click', closeMenu);

		return false;
	}
	else if (o.tagName == 'A' && o.target != '_blank')
	{
		if (o.id != '')
		{
			login = o.id;
		}
		else
		{
			login = o.textlink || o.innerHTML;
		}
		if (!login) {
			el.style.display = 'none';
			return false;
		}
		var i1, i2;

		if ((i1 = login.indexOf('[')) >= 0 && (i2 = login.indexOf(']')) > 0)
		{
			login = login.substring(i1+1, i2);
		}

		login2 = login.toLowerCase();

		if (login2!='radio' && login2!='clan' && login2!='alliance' && login2.indexOf('group.')!=0)
		{
			el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick="AddTo(\''+login+'\',false,true);closeMenu();">'+mes_to+'</a>';
		}

		el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class=menuItem onclick="AddTo(\''+login+'\',true);closeMenu();">'+mes_private+'</a>';

		if (login2!='radio' && login2!='alliance'  && login2!='clan' && login2.indexOf('group.')!=0)
		{
			el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick="Info(\''+login+'\');closeMenu();">'+mes_info+'</a>';
		}

		el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class=menuItem onclick="ClipBoard(\''+login+'\');closeMenu();">'+mes_copy+'</a>';

		if (login2!='radio' && login2!=user && login2!='clan' && login2!='alliance' && login2.indexOf('group.')!=0)
		{
			if (InIgnore(login))
			{
				el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick="UnIgnore(\''+login+'\');closeMenu();">- '+mes_ignore+'</a>';
			}
			else
			{
				el.innerHTML += '<a onmouseover="this.className=\'menuItem2\'" onmouseout="this.className=\'menuItem\'" class="menuItem" onclick="Ignore(\''+login+'\');closeMenu();">+ '+mes_ignore+'</a>';
			}
		}

		if ((testy2 = document.body.clientHeight - testy) < el.clientHeight+2)
		{
			y -= el.clientHeight+2 - testy2;
		}
		
		el.style.left = x + 'px';
		el.style.top = y + 'px';
		el.style.display = 'block';
		el.o = o;
		
		CEvent.add(document, 'click', closeMenu);

		return false;
	}

	return true;
}

function closeMenu(e)
{
	var el = $('oMenu');

	el.style.display = '';
	el.style.top = '0px';

	CEvent.remove(document, 'click', closeMenu);

	return false;
}