var mss_hide_queue = new Array();
var old_group_data = new Array();
var mss_timers = new Array();
var mss_messages = new Array();
if (typeof window["disable_mss_menus"] == 'undefined')	disable_mss_menus = 0;
if (typeof window["disable_mss_messenger"] == 'undefined') disable_mss_messenger = 0;

function mss_create_messenger()
{
	var sid = mss_get_cookie("SID");

	if (sid!="" && !disable_mss_messenger)
	{
		var d = document.getElementById("mss_messenger_out");
		if (!d)
		{
			d = document.createElement("DIV");
			d.setAttribute('id',"mss_messenger");
			d.style.position='absolute';
			d.style.width='180px';
			d.style.fontFamily='Verdana';
			d.style.fontSize='8pt';
			d.style.zIndex=10;

			var mss_closed = parseInt(mss_get_cookie("mss_closed"));
			var content="<!--<div id=mss_messenger_debug></div>--><div id=mss_messenger_out style='overflow-y:auto;overflow-x:hidden;height:270px;padding-top:5px;display:"+(mss_closed?"none":"block")+";border:1px solid #eeeeee;'><center>loading...</center></div><iframe style='display:none' src='' name=mss_contacts_frame id=mss_contacts_frame></iframe><div id=mss_friends_out></div>";
		
			var head_txt = "<table width=100%><tr><td style='color:white;font-weight:bold;'>Центр сообщений</td><td width=15><a href='javascript:void(0)' onmousedown='toggle_messenger();return false;'><img id=img_mss_toggle src='http://findplace.ru/messenger/im/"+(mss_closed?"max":"min")+".gif'></td></tr></table>";
		
			d.innerHTML = "<table width=220 cellpadding=0 cellspacing=0 height="+(mss_closed?50:350)+" id=mss_messenger_table><tr><td width=10 height=35 style='background: url(http://findplace.ru/messenger/im/sbhead-l.png) no-repeat top left;'></td><td onmousedown = 'initMove(document.getElementById(\"mss_messenger\"), event);' style='background: url(http://findplace.ru/messenger/im/sbhead-r.png) no-repeat top right; padding: 10px 10px 0 0; vertical-align: top;'>"+head_txt+"</td></tr><tr><td width=10 style='background: url(http://findplace.ru/messenger/im/sbbody-l.png) no-repeat bottom left;'></td><td style='background: url(http://findplace.ru/messenger/im/sbbody-r.png) no-repeat bottom right;padding: 0px 10px 10px 0px;'>"+content+"</td></tr></table>";

			var x = parseInt(mss_get_cookie("mss_left_mss_messenger"));

			var y = parseInt(mss_get_cookie("mss_top_mss_messenger"));

			if (!(x>0)) x = parseInt(document.body.offsetWidth)-250;
			if (!(y>0)) y = 100;
			if (x<0) x = 0;
			if (y<0) y = 0;

			x = parseInt(x);
			y = parseInt(y);

			d.style.left = x + "px";
			d.style.top = y + "px";
			document.body.appendChild(d);
			moveAlign(d);
			document.onmouseup = function() { moveFinish();}
			document.onmousemove = function (event){ moveHandler(event);}
		}
		update_mss_messenger("");
		setInterval('update_mss_messenger(\"\")',60000);
		setInterval('update_mss_add_data(\"\")',300000);
		setTimeout('update_mss_add_data(\"\")',1);
	}

	d = document.createElement("DIV");
	d.setAttribute("id","mss_messenger_fader");
	d.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity=50);";
	d.style.mozOpacity=0.5;
	d.style.khtmlOpacity=0.5;
	d.style.opacity=0.5;
	d.style.position='absolute';
	d.style.left = 0;
	d.style.top = 0;
//	d.style.bottom = 0;
//	d.style.right = 0;
	d.style.width = Math.max(document.body.offsetWidth,document.body.clientWidth) + "px";
	d.style.height = Math.max(document.body.offsetHeight,document.body.clientHeight,document.body.scrollHeight) + "px";
	d.style.backgroundColor='#000000';
	d.style.display='none';
	d.innerHTML="&nbsp;";
	d.style.zIndex=9;
	document.body.appendChild(d);

//	if (typeof console == "object")
//		console.log(document.body.scrollHeight);
//	alert("offsetHeight=" + document.body.offsetHeight + " clientHeight=" + document.body.clientHeight + " height=" + document.body.height);


	var d1 = document.createElement("DIV");
	d1.setAttribute('id',"mss_messenger_container");
	d1.style.position='absolute';
	d1.style.width='100%';
	d1.style.left='0';
	d1.style.textAlign='center';
	d1.style.align='center';
	d1.style.top='0';
	d1.style.height=document.body.offsetHeight;
	d1.style.fontFamily='Verdana';
	d1.style.fontSize='8pt';
	d1.style.display='none';
	d1.style.zIndex=20;

	var margin_top = (window.screen.availHeight - 100 - 550)/2;
	if (margin_top < 0) margin_top = 10;

	var tth = "<div align=right style='padding:5px 0px 0px 0px;text-align:right;align:right;'><a href='javascript:void(0)' onmousedown='close_frame(\"\");return false;' style='text-decoration:none;color:#2B587A'>закрыть</a></div>";
	var ttc = "<iframe name='mss_center_frame' id='mss_center_frame' style='width:100%;height:530px;scrolling:no' src='' border=0 frameborder=0></iframe>";
        var tt = "<table width=100% align=center style='margin-top:" + margin_top + "px;align:center;text-align:center;'><tr><td valign=top align=center><table width=700 height='550px' cellpadding=0 cellspacing=0 align=center style='align:center;margin: 0 auto;'><tr><td width=10 height=20 style='background: url(\"http://findplace.ru/messenger/im/sbhead-l2.png\") no-repeat top left;'></td><td style='background: url(\"http://findplace.ru/messenger/im/sbhead-r2.png\") no-repeat top right;padding: 0px 10px 0px 0px;text-align:right;'>"+tth+"</td></tr><tr><td width=10 style='background: url(\"http://findplace.ru/messenger/im/sbbody-l.png\") no-repeat bottom left;'></td><td style='background: url(\"http://findplace.ru/messenger/im/sbbody-r.png\") no-repeat bottom right;padding: 0px 10px 10px 0px;'>"+ttc+"</td></tr></table></td></tr></table>";
	d1.innerHTML=tt;
	document.body.appendChild(d1);
	var sid = mss_get_cookie("SID");
	
}
function mss_create_talk_frame(id,src,name)
{
	var d;
	var sid = mss_get_cookie("SID");
	var frame_id="mss_frame_"+id;
	if (!(d = document.getElementById(frame_id)))
		d = document.createElement("DIV");
	if (!d) {alert("error");return;}
	d.setAttribute("id",frame_id);
//	d.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity=100);";
//	d.style.mozOpacity=1;
//	d.style.khtmlOpacity=1;
//	d.style.opacity=1;

	var x,y;
//	x = parseInt(mss_get_cookie("mss_left_"+frame_id));
//	y = parseInt(mss_get_cookie("mss_top_"+frame_id));

	if (!(x>0)) x = parseInt(document.body.offsetWidth)-350;
	if (!(y>0)) y = parseInt(document.documentElement.clientHeight)-380;
	if (x<0) x = 0;
	if (y<0) y = 0;

	d.style.left=x+"px";
	d.style.top=y+"px";

	d.style.width = "300px";
	d.style.height = "350px";
	d.style.backgroundColor='transparent';
	d.style.display='block';
	d.style.position='absolute';


	var head_txt = "<table width=100%><tr><td style='color:white;font-weight:bold;'>"+name+"</td><td width=15><a href='javascript:void(0)' onmousedown='close_frame(\""+frame_id+"\");return false;'><img src='http://findplace.ru/messenger/im/min.gif'></td></tr></table>";
	
	var content = "<table width=100% height=330px cellpadding=0 cellspacing=0>"+
		"<tr><td><div style='height:210px;border:1px solid #ccc;background-color:white;padding:3px;overflow:auto;' id=msg_out_div_"+id+"></div></td></tr>"+
		"<tr><td valign=top height=60px><iframe name=msg_frame_"+id+" id=msg_frame_"+id+" src='' width=1px height=1px frameborder=0 style='display:none;'></iframe>"+
"<form id='send_form_"+id+"' name='send_form_"+id+"' target='msg_frame_"+id+"' action='http://findplace.ru/messenger/talk.php' method=POST><input type=hidden name=selectuser value='"+id+"'><input type=hidden name=SID value='"+sid+"'>"+
"<table width=100% cellpadding=0 cellspacing=0>"+
"<tr><td><textarea name='talk' id='talk' style='height:55px;width:100%;margin-bottom:2px:0;border:1px solid #ccc;background-color:white' onkeyup='mss_onKey(event,"+id+")'></textarea></td></tr>"+
"<tr><td align=right><input onclick='mss_on_send_click("+id+")' type=submit name='send_button' id=send_button value='Отправить' style='width:80;font-weight:bold'></td>"+
"</tr></table></form>"+
"</td></tr></table>";


	d.innerHTML = "<table width=100% cellpadding=0 cellspacing=0 height=100%><tr><td width=10 height=35 style='background: url(http://findplace.ru/messenger/im/sbhead-l.png) no-repeat top left;'></td><td onmousedown = 'initMove(document.getElementById(\""+frame_id+"\"), event);' style='background: url(http://findplace.ru/messenger/im/sbhead-r.png) no-repeat top right; padding: 10px 10px 0 0; vertical-align: top;'>"+head_txt+"</td></tr><tr><td width=10 style='background: url(http://findplace.ru/messenger/im/sbbody-l.png) no-repeat bottom left;'></td><td style='background: url(http://findplace.ru/messenger/im/sbbody-r.png) no-repeat bottom right;padding: 0px 10px 10px 0px;'>"+content+"</td></tr></table>";

	d.style.zIndex=9;
	document.body.appendChild(d);
	moveAlign(d);	


	setTimeout('mss_update_messages('+id+')',1000);
	if (!mss_timers[id]) mss_timers[id] = setInterval('mss_update_messages('+id+')',20000);
}
function mss_get_data(url)
{
	var sid = mss_get_cookie("SID");
	if (!sid || sid == "")
	{
		mss_data_recieved("error=no sid",'MSS_MSG_DATA');
		return;
	}

	var d = document.createElement("SCRIPT");
	d.setAttribute('language','JavaScript');
	d.setAttribute('src',url);
	document.body.appendChild(d);
}
function mss_data_recieved(data,tp)
{
	//alert(data+" "+tp)
	if (tp == "MSS_MSG_DATA")
	{
		if (data.indexOf("OK")>=0)
			create_messenger_tree();
		else 
		{
			if (data.indexOf("error")>=0)
				create_login_form();
		}
	}else
	if (tp == "MSS_ADD_DATA")
	{
		if (data.indexOf("OK")>=0)
			create_messenger_add();
	}else
	if (tp == "MSS_MSG_CONTENT")
	{
		if (data.indexOf("OK")>=0)
			fill_messages(data);
	}
}
function toggle_group(id)
{
	var s = document.getElementById("site_users_"+id);
	var i = document.getElementById("site_usersi_"+id);
	if (s.style.display=="none") mss_set_cookie("mss_closed_group_"+id,"0"); else mss_set_cookie("mss_closed_group_"+id,"1");
	return toggle_div(s,i,'http://findplace.ru/messenger/im/minus.gif','http://findplace.ru/messenger/im/plus.gif');
}
function toggle_messenger()
{
	var s = document.getElementById("mss_messenger_out");
	var i = document.getElementById("img_mss_toggle");
	var t = document.getElementById("mss_messenger_table");
	if (typeof s == "undefined") return;
	if (s.style.display=="none") 
	{
		t.style.height = 280 + "px";
		mss_set_cookie("mss_closed","0"); 
	}
	else 
	{
		t.style.height = 50 + "px";
		mss_set_cookie("mss_closed","1");
	}
	return toggle_div(s,i,'http://findplace.ru/messenger/im/min.gif','http://findplace.ru/messenger/im/max.gif');
}
function toggle_div(d,i,img1,img2)
{
	if (d.style.display=="none") 
	{
		if (i) i.src=img1;
		d.style.display="block"; 
	}
	else 
	{
		d.style.display="none";
		if (i) i.src=img2;
	}
	return false;
}
function create_messenger_tree()
{
	var msg_cnt=0;
	var s = "";
	styles = new Array(new Array("color: #3030a0;","color:#33a;font-weight:bold;"),new Array("color: #33a;","color:#33a;font-weight:bold;"),new Array("color: #a33;","color: #a33;font-weight:bold;"));
	style_all = "text-decoration:none;font-size:8pt;";
	style_div = "text-decoration:none;font-size:8pt;clear:both;width:100%;height:30px;border-bottom:1px solid #eeeeee;padding:2px 1px";
	var bgcolors = new Array("white","#F5F9FB");
	var sid = mss_get_cookie("SID");	
	ucnt = 0;
	if (old_group_data)
	if (old_group_data == group_data)
	{
		return;
	}
	old_group_data = group_data;
	var printed_users = new Array();
	var o = new Array(new Array(),new Array(),new Array(),new Array(),new Array(),new Array(),new Array(),new Array());
	for (var g=0;g<group_data.length;g++)
	{
		var g_closed = parseInt(mss_get_cookie("mss_closed_group_"+g));
		var g_has_msg = 0;
		var a = group_data[g][1].split(",");
		var jj=0;
		for (var i=0;i<a.length;i++)
		if (!printed_users[a[i]])
		{
			printed_users[a[i]] = 1;
			var udata = new Array();
			for (var j=0;j<user_data.length;j++)
				if (user_data[j][0] == a[i])
					udata = user_data[j];
			if (udata[0]>0)
			{
				style=style_all+styles[udata[2]][udata[3]];
				if (udata[5])
				{
					j=3;
					if (udata[3]>0) j = 4;
					if (udata[4]>0) j=5;
					sim = "online.gif";
				}
				else 
				{
					j=0;
					if (udata[3]>0) j = 1;
					if (udata[4]>0) j=2;

					sim = "offline.gif";
				}
				var msg = "";
				if (udata[4]>0)
				{
					msg = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0' width='25' height='15' style='background:transparent;'><param name='movie' value='http://findplace.ru/messenger/im/flash_konvert.swf'><param name='quality' value='high'><param name='wmode' value='transparent'><embed src='http://findplace.ru/messenger/im/flash_konvert.swf' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='25' height='15' style='background:transparent;'></embed></object>&nbsp;";
					msg_cnt++;
					g_has_msg = 1;
				}
				o[j][o[j].length]="<a href='javascript:void(0)' onmousedown='open_talk(\""+sid+"\","+udata[0]+",\""+udata[1]+"\");return false;' style='text-decoration:none'><img src='http://findplace.ru/messenger/im/"+sim+"'>&nbsp;"+msg+"<span  style='"+style+"'>"+udata[1]+"</span></a><div style='text-align:right;width:100%;'><a href='http://"+group_data[g][0]+"/?a="+udata[0]+"' style='color:#2B587A' target=_blank>"+group_data[g][0]+"</a></div>";
				jj++;
			}
			ucnt++;
		}
		if (g_has_msg) g_closed = 0;
	}
	//var out="<a href='javascript:void(0)' style='text-decoration:none;font-size:8pt;' onmousedown='toggle_group("+g+")'><img id='site_usersi_"+g+"' src='http://findplace.ru/messenger/im/"+(g_closed?"plus":"minus")+".gif'>&nbsp;<b>"+group_data[g][0]+"</b></a><div id='site_users_"+g+"' style='margin-left:10px;display:"+(g_closed?"none":"block")+"'>";
	var out = "";
	var jj=0;
	for (i=o.length-1;i>=0;i--)
	{
		for (j=0;j<o[i].length;j++)
		{
			out=out+"<div style='"+style_div+";background-color:"+bgcolors[jj%2]+"'>"+o[i][j]+"</div>";
			jj++;
		}
	}
	//out=out+"</div><br>";
	s = out;
	if (ucnt == 0)
	{
		s = "<center><b>Пока друзей нет, Вы можете добавить их наводя мышку на ники на страницах сайта</b></center>";
	}else
	{
 		s=s+"<div style='display:none'><img src='http://findplace.ru/messenger/im/minus.gif'><img src='http://findplace.ru/messenger/im/plus.gif'></div>";
	}
	var d = document.getElementById("mss_messenger_out");
	if (d) d.innerHTML = s;

	if (typeof mss_update_toolbar_state == "function" && msg_cnt > 0)
		mss_update_toolbar_state(msg_cnt);
}
function create_messenger_add()
{
	var s = new Array();
	var sid = mss_get_cookie("SID");	
	
	if (mss_add_data_cnt[0]>0)
		s[s.length]="<a href='javascript:void(0)' onmousedown='open_frame(\"friends_ask\");return false;' style='color:#2B587A'><b>Новые друзья ("+mss_add_data_cnt[0]+")</b></a>";
	if (mss_add_data_cnt[1]>0) s[s.length]="<a href='javascript:void(0)' onmousedown='open_frame(\"news\");return false;' style='color:#2B587A'><b>Мои новости "+(mss_add_data_cnt[1]>0?"("+mss_add_data_cnt[1]+")":"")+"</b></a>";
	if (mss_add_data_cnt[2]>0) s[s.length]="<a href='javascript:void(0)' onmousedown='open_frame(\"comments\");return false;' style='color:#2B587A'><b>Мои комментарии "+(mss_add_data_cnt[2]>0?"("+mss_add_data_cnt[2]+")":"")+"</b></a>";
	s[s.length]="<a href='javascript:void(0)' onmousedown='open_frame(\"friends\");return false;' style='color:#2B587A'><b>Мои друзья "+(mss_add_data_cnt[3]>0?"("+mss_add_data_cnt[3]+")":"")+"</b></a>";


	var ar = [["mss_messenger_new_friends_cnt",mss_add_data_cnt[0]],["mss_messenger_news_cnt",mss_add_data_cnt[1]],["mss_messenger_friends_cnt",mss_add_data_cnt[3]],["mss_messenger_new_comments_cnt",mss_add_data_cnt[2]]];
	for (var i in ar)
	{
		var div = document.getElementById(ar[i][0]);
		if (typeof div == "object" && div != null)
		{
			if (ar[i][1] > 0)
				div.innerHTML = "(" + ar[i][1] + ")";
			else if (div.className.match(/\bhideable\b/))
			{
				var hidediv = document.getElementById(ar[i][0]+"_hidecontainer");
				if (typeof hidediv == "object" && hidediv != null)
				{
					hidediv.style.display = "none";
				}
				else
					div.parentNode.parentNode.style.display = "none";
			}
		}
	}


	var ss = "";
	for (var i=0;i<s.length;i++)
		ss+="<div style='padding:2px 0px;clear:both;'>"+s[i]+"</div>";
	ss = "<div style='border:1px solid #eeeeee;padding:0px 5px 0px 5px;margin-top:5px'>"+ss+"</div>";
	var d = document.getElementById("mss_friends_out");
	if (d) d.innerHTML = ss;
}
function create_login_form()
{
	var s = "<div style='margin:5px;width:100%'><br><b>Вход на сайт</b><br><form method=post action='http://www.findplace.ru/users/login.php'><table width=100% align=center valign=center><tr><td width=50%>логин</td><td><input name=login class=small style='width:100%'></td></tr><tr><td>пароль</td><td><input type=password name=password class=small style='width:100%'></td></tr><tr><td><input class=small type=submit name=enter value=Войти></td><td align=right><a class=small href='http://findplace.ru/register/'><b>Регистрация</b></a></td></tr></table></form></div>";
	var d = document.getElementById("mss_messenger_out");
	if (d) d.innerHTML = s;

}
function update_mss_messenger(add_u)
{
	var sid = mss_get_cookie("SID");
	var url = 'http://findplace.ru/messenger/?SID='+sid+"&rr="+Math.random();
	if (add_u!="") url=url+"&"+add_u;
	mss_get_data(url);
	return false;
}
function update_mss_add_data(add_u)
{
	var sid = mss_get_cookie("SID");
	var url = 'http://findplace.ru/messenger/mss_add_data.php?SID='+sid+"&rr="+Math.random();
	if (add_u!="") url=url+"&"+add_u;
	mss_get_data(url);
	return false;
}
function mss_set_cookie(sName, sValue)
{
//	if (typeof console == "object") console.log("mss_set_cookie: sName=" + sName + " sValue=" + sValue);
	var d1 = new Date();
	var d2 = new Date(d1.getTime()+24*60*60*31);
	document.cookie = sName + "=" + escape(sValue) + ";path=/;expires="+d2.toUTCString()+";";
}

function mss_get_cookie(sName)
{

var d = document.getElementById("mss_messenger_debug");
	if (d) d.innerHTML = document.cookie;
	var aCookie = document.cookie.split("; ");
	for (var i=0; i < aCookie.length; i++)
	{
		var aCrumb = aCookie[i].split("=");
		if (sName == aCrumb[0]) 
			return unescape(aCrumb[1]);
	}
	return "";
}


function mss_init()
{
	if (!disable_mss_menus)
	{
		a = document.getElementsByName("mss_nick_name");
		for (var i=0;i<a.length;i++)
		{
			mss_attach_menus(a[i]);
		}
	}
	mss_create_messenger();
}
function mss_show_user_menu(event)
{
	var e;
	if (event) e = event; else e = window.event;
	var d = (e.srcElement)?e.srcElement:e.target;
	while (d)
	{
		if (d.id)
			if (d.id.indexOf("user") == 0) break;
		d = d.parentNode;
	}
	if (!d) return;
	var id=d.id;
	id = id.replace(/^user/,"");

	var m = document.getElementById("mss_menu_"+id);
	var x = GetX(d);
	var y = GetY(d);
	m.style.left = x+5 + "px";
	m.style.top = y+20 + "px";
	m.style.display='block';
	mss_remove_from_hide_queue(id);
}
function mss_hide_user_menu()
{
	for (var i=0;i<mss_hide_queue.length;i++)
		if (mss_hide_queue[i]>0)
		{
			var m = document.getElementById("mss_menu_"+mss_hide_queue[i]);
			m.style.display='none';
		}
	mss_hide_queue = new Array();
}
function mss_out_user_nick(event)
{
	var e;
	if (event) e = event; else e = window.event;
	var d = (e.srcElement)?e.srcElement:e.target;
	while (d)
	{
		if (d.id)
			if (d.id.indexOf("user") == 0) break;
		d = d.parentNode;
	}
	if (!d) return;
	var id=d.id;
	id = id.replace(/^user/,"");
	mss_hide_queue.push(id);
	setTimeout('mss_hide_user_menu()',300);
}
function mss_remove_from_hide_queue(id)
{
	for (var i=0;i<mss_hide_queue.length;i++)
		if (mss_hide_queue[i] == id) mss_hide_queue[i] = 0;
}
function mss_out_user_menu(event)
{
	var e;
	if (event) e = event; else e = window.event;
	var d = (e.srcElement)?e.srcElement:e.target;
	while (d && d.tagName!='DIV')
		d = d.parentNode;

	var id=d.id;
	id = id.replace(/^mss_menu_/,"");
	mss_hide_queue.push(id);
	setTimeout('mss_hide_user_menu()',300);
	return false;
}
function mss_over_user_menu(event)
{
	var e;
	if (event) e = event; else e = window.event;
	var d = (e.srcElement)?e.srcElement:e.target;
	while (d && d.tagName!='DIV')
		d = d.parentNode;
	var id=d.id;
	id = id.replace(/^mss_menu_/,"");
	mss_remove_from_hide_queue(id);
	return false;
}
function GetX(e)
{
	var x=0;
	while (e)
	{
		x+=e.offsetLeft;
		e = e.offsetParent;
	}
	return x;
}
function GetY(e)
{
	var y=0;
	while (e)
	{
		y+=e.offsetTop;
		e = e.offsetParent;
	}
	return y;
}
function mss_attach_menus(a)
{
	a.onmouseover=mss_show_user_menu;
	a.onmouseout=mss_out_user_nick;
	var id=a.id;
	id = id.replace(/^user/,"");
	var d;
	d = document.getElementById("mss_menu_"+id);
	if (d) return;
	d = document.createElement("DIV");
	d.setAttribute('id',"mss_menu_"+id);
	d.style.border='1px solid #ccc';
	d.style.padding='5px';
	d.style.backgroundColor='white';
	d.style.position='absolute';
	d.style.display='none';
	d.onmouseover = mss_over_user_menu;
	d.onmouseout = mss_out_user_menu;
	d.onmousedown = mss_out_user_menu;
	var name=a.innerText;

	var sid = mss_get_cookie("SID");
	var ss = "<a href='javascript:void(0)' onmousedown='open_talk(\""+sid+"\","+id+",\""+name+"\");return false;'>отправить сообщение</a><br><a href='javascript:void(0)' onmouseup='mss_add_friend("+id+");return false;'>добавить в друзья</a>";
	d.innerHTML = ss;
	d.style.left="0px";
	d.style.top="0px";
	document.body.appendChild(d);
}
function mss_add_friend(id)
{
	var proc_fr = 'update_mss_messenger("&add_friend='+id+'")';
	setTimeout(proc_fr,500);
}
function mss_del_friend(id)
{
	var proc_fr = 'update_mss_messenger("&del_friend='+id+'")';
	setTimeout(proc_fr,500);
}
function mss_open_upload(mode,id,code,service_id)
{
	var sid = mss_get_cookie("SID");
	var url = "";
	if (id>0) url = "http://photovision.ru/uploadnew/?mode="+mode+"&id="+id+"&SID="+sid+"&service_id="+service_id;
	else if (code>0) url = "http://photovision.ru/uploadnew/?mode="+mode+"&code="+code+"&SID="+sid+"&service_id="+service_id;
	else url = "http://photovision.ru/uploadnew/?mode="+mode+"&SID="+sid+"&service_id="+service_id;
	open_frame(url);
	return false;
}
function mss_open_upload_to(mode,sid,id,to,type,service_id)
{
	var sid = mss_get_cookie("SID");
	var url = "";
	if (id>0) url = "http://photovision.ru/uploadnew/?mode="+mode+"&id="+id+"&SID="+sid+"&to_id="+to+"&to_type="+type+"&service_id="+service_id;
	else url = "http://photovision.ru/uploadnew/?mode="+mode+"&SID="+sid+"&to_id="+to+"&to_type="+type+"&service_id="+service_id;
	open_frame(url);
	return false;
}
function mss_open_delete(mode,sid,id,to,type,service_id)
{
	var sid = mss_get_cookie("SID");
	var url = "";
	if (id>0) url = "http://photovision.ru/uploadnew/?action=delete&mode="+mode+"&id="+id+"&SID="+sid+"&to_id="+to+"&to_type="+type+"&service_id="+service_id;
	else url = "http://photovision.ru/uploadnew/?action=delete&mode="+mode+"&SID="+sid+"&to_id="+to+"&to_type="+type+"&service_id="+service_id;
	open_frame(url);
	return false;
}

function mss_open_profile(mode)
{
	var sid = mss_get_cookie("SID");
	open_frame("http://findplace.ru/userinfo/?SID="+sid+(mode!=null?"&mode="+mode:""));
	return false;
}
function mss_open_reg(vars)
{
	if (typeof vars == "undefined")
		vars = "";

	open_frame("http://findplace.ru/register/?" + vars);
	return false;
}
function mss_open_login()
{
	open_frame("http://findplace.ru/login_form/");
	return false;
}
function mss_open_restore_password()
{
	open_frame("http://findplace.ru/restore_password/");
	return false;
}
function mss_open_reg_params(s)
{
	open_frame("http://findplace.ru/register/?"+s);
	return false;
}
function open_frame(page)
{
	var sid = mss_get_cookie("SID");
	var d = document.getElementById("mss_messenger_container");
	if (typeof d != "undefined") d.style.display='block';
	d = document.getElementById("mss_messenger_fader");
	if (typeof d != "undefined") d.style.display='block';
	var fr = document.getElementById("mss_center_frame");
	if (typeof fr != "undefined")
	{
		if (page.indexOf("http") == 0)
			fr.src=page + (page.match(/\?/)?"&":"?") + "from=" + escape(document.location);
		else
			fr.src="http://findplace.ru/messenger/mss_frame.php?SID="+sid+"&page="+page;
	}

	d = document.getElementById("mss_messenger_fader");
	d.style.width = Math.max(document.body.offsetWidth,document.body.clientWidth) + "px";
	d.style.height = Math.max(document.body.offsetHeight,document.body.clientHeight,document.body.scrollHeight) + "px";

	return false;
}
function close_frame(frame_id)
{
	if (!frame_id || frame_id == "") frame_id = "mss_messenger_container";
	var d = document.getElementById(frame_id);
	if (typeof d != "undefined") d.style.display='none';
	d = document.getElementById("mss_messenger_fader");
	if (typeof d != "undefined") d.style.display='none';
	return false;
}
function open_talk(sid,user,name)
{
	var from = document.location+"";
	if (from.indexOf("findplace")>0) from = "";
	else from = "&from="+encodeURI(from);
//	window.open("http://findplace.ru/messenger/wnd.php?SID="+sid+"&selectuser=" + user+'&rnd=' + Math.round(Math.random()*1000000000)+from, "TalkAbout_"+user, "width=850, height=450, directories=no, toolbar=no, location=no, menubar=no, status=no");
	mss_create_talk_frame(user,"http://findplace.ru/messenger/wnd2.php?SID="+sid+"&selectuser=" + user+'&rnd=' + Math.round(Math.random()*1000000000)+from,"Сообщения "+name);
	return false;
}

var moveState = false;
var x0, y0;
var divX0, divY0;

// Объявим функцию для определения координат мыши
function defPosition(event) {
    var x = y = 0;
    if (document.attachEvent != null) { // Internet Explorer & Opera
        x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
        y = window.event.clientY + document.documentElement.scrollTop + document.body.scrollTop;
    }
    if (!document.attachEvent && document.addEventListener) { // Gecko
        x = event.clientX + window.scrollX;
        y = event.clientY + window.scrollY;
    }
    return {x:x, y:y};
}

// Функция инициализации движения
// Записываем всё параметры начального состояния
var mss_move_object;
function initMove(div, event) {
    var event = event || window.event;
	if (!div) return;
	mss_move_object = div;
    x0 = defPosition(event).x;
    y0 = defPosition(event).y;
    divX0 = parseInt(div.style.left);
    divY0 = parseInt(div.style.top);
    moveState = true;
}
// И последнее
// Функция обработки движения:
function moveHandler(event) {
	if (!mss_move_object) return;
    var event = event || window.event;
    if (moveState && mss_move_object) {
	var xx = divX0 + defPosition(event).x - x0;
	var yy = divY0 + defPosition(event).y - y0;
	if (xx<0) xx = 0;
	if (yy<0) yy = 0;

        mss_move_object.style.left = xx + "px";
        mss_move_object.style.top  = yy + "px";
	moveAlign(mss_move_object);
//	var iid=mss_move_object.id;
//	alert(iid+" "+xx+" "+yy);

    }
	return false;
}
function moveFinish()
{
	if (!mss_move_object) return;
	moveState = false;
	var iid=mss_move_object.id;
//	alert(iid);
	if (mss_move_object) {mss_set_cookie("mss_left_"+iid,GetX(mss_move_object));mss_set_cookie("mss_top_"+iid,GetY(mss_move_object));}
	mss_move_object = null;
}
function moveAlign(div)
{
	var grid_step = 20;
	var x = GetX(div);
	var y = GetY(div);
	var w = div.offsetWidth;	
	var h = div.offsetHeight;	
	var nx=x,ny=y;

	
	var ww=parseInt(document.body.offsetWidth);
	var hh=parseInt(document.documentElement.clientHeight)+parseInt(document.documentElement.scrollTop);

//	alert(x+" "+y+" "+w+" "+h+" "+ww+" "+hh);
	if (Math.abs(x)<grid_step) nx = 0;
	if (Math.abs(y)<grid_step) ny = 0;
	if (Math.abs(ww-50-(x+w))<grid_step) nx = ww-w-50;
	if (Math.abs(hh-30-(y+h))<grid_step) ny = hh-h-30;
	if (x+w>ww-50) nx=ww-w-50;
	if (y+h>hh-30) ny=hh-h-30;
	if (x!=nx) 
	{
		div.style.left=nx+"px";
//		alert(x+"->"+nx);
	}
	if (y!=ny) 
	{
		div.style.top=ny+"px";
//		alert(y+"->"+ny);
	}
}


function mss_onKey(event,id)
{
	if (event) e = event; else e = window.event;

	if (e.ctrlKey && (e.keyCode == 13))
	{
		document.forms["send_form_"+id].submit();
		mss_on_send_click(id);
	}
}
function mss_on_send_click(id)
{
	setTimeout('document.forms["send_form_'+id+'"].talk.value=""',500);
	setTimeout('mss_update_messages('+id+')',1000);
}


function mss_update_messages(id)
{
	var sid = mss_get_cookie("SID");
	var url="http://findplace.ru/messenger/msg_list2.php?seluser="+id+"&SID="+sid+"&rr="+Math.random();
	mss_get_data(url);
}
function mss_add_new_message(id,text,sent,fr,uid)
{
	for (var i=0;i<mss_messages.length;i++)
		if (mss_messages[i][0] == id) 
		{
			return;
		}
	mss_messages[mss_messages.length] = new Array(id,text,sent,fr,uid);
}
function mss_sortfunction(a, b)
{
	return (a[0]>b[0]?1:(a[0]==b[0]?0:-1));
}
function mss_update_msg_out(uid)
{
	var audio = 0,add_msg=0;
	var d = document.getElementById('msg_out_div_'+uid);
	if (!d) return;
	mss_messages.sort(mss_sortfunction)
	for (var i=0;i<mss_messages.length;i++)
	{
		var id=mss_messages[i][0];
		if (mss_messages[i][4] == uid)
		{
		var md = document.getElementById('msg_div'+id);
		if (!md)
		{
			md = document.createElement('div');
			var s = '';
			if (mss_messages[i][3]>0) s = '#a33'; else s = '#33a';
			md.id='msg_div'+id;
//			md.innerHTML = '<div style="color: '+s+'">'+mss_messages[i][1]+'</div>';
       			a = document.createElement('div');
			a.style.color=s;
			md.appendChild(a);
			a.innerHTML=mss_messages[i][1];

			d.appendChild(md);
			if (mss_messages[i][3]>0 && !mss_messages[i][2]) audio=1;
			if (mss_messages[i][3]>0 || !mss_messages[i][2]) add_msg = 1;
		}
		}
	}
	if (audio)
	{
//		<OBJECT DATA="audioURL.mid" TYPE="audio/midi"          TITLE="Description" WIDTH=250 HEIGHT=20>   <PARAM NAME=autostart VALUE=true>   <PARAM NAME=hidden VALUE=false> </OBJECT>

/*		var a = document.createElement('audio');
		a.setAttribute('src','http://findplace.ru/messenger/audio/min.wav');
		a.setAttribute('autoplay','true');
		d.appendChild(a);
	
*/		
		var a = document.getElementById("mss_msg_audio");
		if (!a)
		{
			a = document.createElement('div');
			a.style.display='block';
			a.style.visibility='hidden';
			a.setAttribute("id","mss_msg_audio");
			d.appendChild(a);
		}
		a.innerHTML = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' width='1' height='1' id='niftyPlayer' align=''><param name=movie value='http://findplace.ru/messenger/mss_niftyplayer.swf?as=1&file=http://findplace.ru/messenger/audio/min.mp3'><param name=quality value=high><param name=bgcolor value=#FFFFFF><embed src='http://findplace.ru/messenger/mss_niftyplayer.swf?as=1&file=http://findplace.ru/messenger/audio/min.mp3' quality=high bgcolor=#FFFFFF width='1' height='1' name='niftyPlayer' align='' type='application/x-shockwave-flash' swLiveConnect='true' pluginspage='http://www.macromedia.com/go/getflashplayer'></embed></object>";
	}
	if (add_msg)
	{
		var h=0;
		d.blur();
		while (h<d.scrollHeight)
		{
			if (d.doScroll) d.doScroll('scrollbarPageDown');
			h = d.scrollHeight;
			d.scrollTop = h+1000;
		}
	}
}

