//to string Object.toJSON(data);

var chatQID=0;
var chatIsInit=0;
var charLastMsgId=0;

function initChat(qid) {
	chatQID=qid;
	var url = '/qap/chat?cmd=lastmsg&to='+chatQID+'&limit=100';
	new Ajax.Request(url, {
	  method: 'get',
	  onComplete: function(transport) {
			if (200 == transport.status) {
				var resultObject = transport.responseText.evalJSON(true);
				if( resultObject && resultObject.status == "ERROR")
				{
					alert(resultObject.errormessage);
				}
				else {
					insertChatMessages(resultObject);
					chatIsInit=1;
					//
					//window.setInterval("getChatMessage();",5000);
				}
			}
			setTimeout("getChatMessage();",1000);
			//window.setInterval("getChatMessage();",5000);
		}
	});
}

function getChatMessage() {
	
	try {
	
	var url = '/qap/chat?cmd=getmsg&to='+chatQID+'&msg_id='+charLastMsgId+"&t="+Math.random();
	new Ajax.Request(url, {
	  method: 'get',
	  onComplete: function(transport) {
		try {
		if (200 == transport.status) {
			//document.body.appendChild(document.createTextNode(transport.responseText));
			var resultObject = transport.responseText.evalJSON(true);
			if( resultObject && resultObject.status == "ERROR")
			{
				alert(resultObject.errormessage);
			}
			else {
				//alert('get data:  ' + transport.responseText);
				insertChatMessages(resultObject);
			}
		}
		}catch(e) {alert(e);}
		setTimeout("getChatMessage();",2000);
	  }
	});
	}catch(e){
		alert(e);
	}
}

function sentChatMessage(msg) {
	var url = '/qap/chat?cmd=sendmsg&to='+chatQID;
	new Ajax.Request(url, {
	  method: 'post',
	  parameters: 'msg='+encodeURIComponent(msg),
	  onComplete: function(transport) {
		var resultObject = transport.responseText.evalJSON(true);
		if( resultObject && resultObject.status == "ERROR")
		{
			alert(resultObject.errormessage);
		}else {
				insertChatMessages(resultObject);
		}
	  }
	});
}

function insertChatMessages( data )
{
	try {
	var Items = data.result;
	if( !Items )
		return;
	var c="";
	var table = document.getElementById('chatTable');
	for (var i = 0; i < Items.length; i++)
	{
		var item = Items[i];
		var old_item = document.getElementById('chatMsg_'+item.msgId);
		if( old_item )
			continue;
		
				
		c += "<div style='clear:both;padding:0px 0px 0px 0px;border-bottom:1px solid #ccc' id='chatMsg_"+item.msgId;
		c += "'><div class='' style='float:left;padding-right:5px;padding-left:3px;padding-top:5px;'><a href='/user/index/"+item.from+"'><img class='' style='background:#FFFFFF none repeat scroll 0 0;border:1px solid #888888;padding:1px;' height='32' width='32' title="+item.fromValue+" src='/qap/getimage?id="+item.from+"&max_width=32&max_height=32&empty_gif=1'/></a></div><div style='float:left;width:215px;padding-bottom:5px;' ><div style='font-size:11px;padding-bottom:5px;text-align:left;width:100%;padding-top:5px;'>";
		c += "<div style=';color:#888'>";
		c += item.date;
		c += "</div></div>";
		c += "<div style='padding-right:5px;word-wrap:break-word;'>"+item.msg+"</div></div></div>";
		charLastMsgId=item.msgId;
	}
	table.innerHTML += c;
	}catch(e){alert(e);}
	var objDiv = document.getElementById("chatTable");
	objDiv.scrollTop = objDiv.scrollHeight;
	objDiv = document.getElementById("chatTable");
	objDiv.scrollTop = objDiv.scrollHeight;
}
