var messages_type = {0:'all',1:'received',2:'sent'};
var s = document.location.href;
//var messages_ajax_url = (s.indexOf("lang=en") == -1) ? "manage_messages.php?lang=bg" : "manage_messages.php?lang=en";
var messages_ajax_url = "manage_messages.php?";
var members_ajax_url = "manage_members.php?";
var membersMessagesType = new Object();

function setMessageType(friendId,type){
	membersMessagesType[friendId] = type;
}

function getMessages(friendId,hideContent) {
	ajaxImage("messages_"+friendId,hideContent);
	var xmlHttp = GetXmlHttp();

    xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
			$("messages_"+friendId).innerHTML = xmlHttp.responseText;
			show("messages_"+friendId);
		}
	}
	if (xmlHttp!=null){
		var url = messages_ajax_url;
		url += "action=getMessages";
		url += "&from="+friendId;
		url += "&to="+myMemberId;
		url += "&messages_type="+messages_type[membersMessagesType[friendId]];
		url += "&sid="+Math.random();

		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
	}
}

function setMessages(friendId) {
	$("new_mess_"+friendId).innerHTML = "";
	$("new_mess_"+friendId).style.display = "none";
	if(swap("messages_"+friendId)==true){
		getMessages(friendId,true);
	}
}

function deleteMessage(friendId,messageId){
	var xmlHttp = GetXmlHttp();

    xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
			$("message_status_"+friendId).innerHTML = xmlHttp.responseText;
			getMessages(friendId,false);
		}
	}
	if (xmlHttp!=null){
		var url = messages_ajax_url;
		url += "action=deleteMessage";
		url += "&from="+friendId;
		url += "&to="+myMemberId;
		url += "&delcomment="+messageId;
		url += "&sid="+Math.random();

		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
	}
}

function setSendMessageForm(friendId){
	swap("message_status_"+friendId);
	if(swap("form_"+friendId)==true){
		$("message_status_"+friendId).innerHTML = "";
		var messageForm = $("form_template").innerHTML;
		var re = new RegExp("writemessage" , "g");
		messageForm = messageForm.replace(re, "writemessage_"+friendId);
		re = new RegExp("sendMessage" , "g");
		messageForm = messageForm.replace(re, "sendMessage("+friendId+")");

		$("form_"+friendId).innerHTML = "";
		$("form_"+friendId).innerHTML = messageForm;
		tinyMCE.execCommand("mceAddControl", false, "writemessage_"+friendId);
		tinyMCE.execCommand("mceFocus", false, "writemessage_"+friendId);
	}
}

function sendMessage(friendId){
	ajaxImage("message_status_"+friendId, true);
	tinyMCE.execInstanceCommand("writemessage_"+friendId, 'mceCleanup');
	var content = tinyMCE.getContent("writemessage_"+friendId).replace(/\+/g, "&#43");
	content = content.replace(/\\/g, "&#92");
	var form = document.forms["message_form"];
	form.elements["text"].value = content;
	form.elements["to"].value = friendId;
	form.elements["message_to_send"].value = "1";
	document.forms["message_form"].submit();
}

function message_sent(){
	var form = document.forms["message_form"];
	if(form.elements["message_to_send"].value == "1"){
		form.elements["message_to_send"].value = "0";
		friendId = parseInt(form.elements["to"].value);
		var messages_frame = document.getElementById('messages_frame');
		var messages_frameDoc = (messages_frame.contentWindow || messages_frame.contentDocument);
		if (messages_frameDoc.document) messages_frameDoc = messages_frameDoc.document;
		$("message_status_"+friendId).innerHTML = messages_frameDoc.body.innerHTML;
		getMessages(friendId, false);
	}
}

function deleteSentMessage(friendId,messageId){
	var xmlHttp = GetXmlHttp();

	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
			getMessages(friendId,false);
		}
	}
	if (xmlHttp!=null){
		var url = messages_ajax_url;
		url += "action=deleteSentMessage";
		url += "&from="+myMemberId;
		url += "&to="+friendId;
		url += "&delcomment="+messageId;
		url += "&sid="+Math.random();

		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
	}
}

function setMember(memberId){
	var xmlHttp = GetXmlHttp();

	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
			eval(xmlHttp.responseText);
			var memberHTML = $("member_template").innerHTML;
			var re = new RegExp("memberId" , "g");
			memberHTML = memberHTML.replace(re, memberId);
			re = new RegExp("memberUsername" , "g");
			memberHTML = memberHTML.replace(re, username);
			$("user_msg").innerHTML += memberHTML;
			setMemberStatus(memberId, new_messages, minutes_after_last_action);
		}
	}
	if (xmlHttp!=null){
		xmlHttp.open("GET", members_ajax_url+"action=getMemberInfo&memberId="+memberId, true);
		xmlHttp.send(null);
	}
}

function setMembers(){
	//for (var memberId in membersMessagesType) {
	//	setMember(memberId);
	//}
	checkMembersStatus();
	setInterval('checkMembersStatus()', 60000);
}

function setMemberStatus(memberId, new_messages, minutes_after_last_action){
	if(new_messages == 0){
		$("new_mess_"+memberId).innerHTML = '<img src="img/send.gif" hspace="2" style="display:inline;" alt="new message" title="new message"> ';
		$("new_mess_"+memberId).style.display = "inline";
		if($("messages_"+memberId).style.display == "block"){
			getMessages(memberId,false);
		}
	}
	if(minutes_after_last_action < 16){
		$("online_status_"+memberId).innerHTML = '<img src="img/online.gif" hspace="2" style="display:inline;" alt="member is online" title="member is online">';
		$("online_status_"+memberId).style.display = "inline";
	}
}

function checkMembersStatus( ){
	var membersQ = "";
	for (var memberId in membersMessagesType) {
		membersQ += memberId + ",";
	}
	var xmlHttp = GetXmlHttp();

	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
			eval(xmlHttp.responseText);
			for (var memberId in membersMessagesType) {
				setMemberStatus(memberId, membersNewMessage[memberId], membersLastAction[memberId]);
			}
		}
	}

	if (xmlHttp!=null){
		xmlHttp.open("GET", members_ajax_url+"action=getMembersStatus&members="+membersQ, true);
		xmlHttp.send(null);
	}

}

function blockMember(memberId){
	//if(memberId == 34243) alert('blockmember');
	ajaxImage("messages_"+memberId,true);
	var xmlHttp = GetXmlHttp();

    xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
			if(xmlHttp.responseText == "ok"){
				//if(memberId == 34243) alert($("blocked_member_status_" + memberId).name);
				//if(memberId == 34243) alert($("member_status_" + memberId).name);
				show("blocked_members");
				blockedMembers[memberId] = 0;
				blockedMembersCount = blockedMembersCount + 1;
				delete opennedMembers[memberId];
				delete membersMessagesType[memberId];
				var username = $("member_"+memberId).innerHTML;

				//$("member_status_"+memberId).innerHTML = " ";
				var newMemberHTML = $("blocked_member_status_memberId").innerHTML;
				var re = new RegExp("memberId" , "g");
				newMemberHTML = newMemberHTML.replace(re, memberId);
				re = new RegExp("username" , "g");
				newMemberHTML = newMemberHTML.replace(re, username);

				//$("blocked_members_list").innerHTML = newMemberHTML + $("blocked_members_list").innerHTML;
				var newdiv = document.createElement('div');
				newdiv.setAttribute('id',"blocked_member_status_" + memberId);
				newdiv.innerHTML = newMemberHTML;
				removeObject("member_status_"+memberId);
				$("blocked_members_list").appendChild(newdiv);
			}
		}
	}
	if (xmlHttp!=null){
		var url = messages_ajax_url;
		url += "action=blockMember";
		url += "&memberId="+memberId;
		url += "&sid="+Math.random();

		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
	}
}

function unblockMember(memberId){
	//if(memberId == 34243) alert('un-blockmember');
	var xmlHttp = GetXmlHttp();

    xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
			if(xmlHttp.responseText == "ok"){
				//if(memberId == 34243) alert($("blocked_member_status_" + memberId).name);
				//if(memberId == 34243) alert($("member_status_" + memberId).name);
				var username = $("member_"+memberId).innerHTML;
				//$("blocked_member_status_"+memberId).innerHTML = " ";
				var newMemberHTML = $("member_status_memberId").innerHTML;
				var re = new RegExp("memberId" , "g");
				newMemberHTML = newMemberHTML.replace(re, memberId);
				re = new RegExp("memberUsername" , "g");
				newMemberHTML = newMemberHTML.replace(re, username);

				var newdiv = document.createElement('div');
				newdiv.setAttribute('id',"member_status_" + memberId);
				newdiv.innerHTML = newMemberHTML;

				removeObject("blocked_member_status_"+memberId);
				$("user_msg").appendChild(newdiv);
				//$("user_msg").innerHTML = $("user_msg").innerHTML + newMemberHTML;
				delete blockedMembers[memberId];
				blockedMembersCount = blockedMembersCount - 1;
				if(blockedMembersCount == 0)
					hide("blocked_members");
				opennedMembers[memberId] = 0;
				membersMessagesType[memberId] = 0;
			}
		}
	}
	if (xmlHttp!=null){
		var url = messages_ajax_url;
		url += "action=unblockMember";
		url += "&memberId="+memberId;
		url += "&sid="+Math.random();

		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
	}
}