/*
360 Instant Messaging and Friend List AJAX Module
View Script
Written By: Ken Colton <kcolton@360hubs.com>
*/

var reqWindow;

function IM360UpdateStatus(online)
{
	if(online == 1)
	{
		document.getElementById('govisible').style.display = "none";
		document.getElementById('goingvisible').style.display = "none";

		document.getElementById('goinvisible').style.display = "block";
		document.getElementById('goinginvisible').style.display = "none";
	}
	else if(online == 2)
	{
		document.getElementById('govisible').style.display = "block";
		document.getElementById('goingvisible').style.display = "none";

		document.getElementById('goinvisible').style.display = "none";
		document.getElementById('goinginvisible').style.display = "none";
	}
}

function IM360GoVisible()
{
	document.getElementById('govisible').style.display = "none";
	document.getElementById('goingvisible').style.display = "block";

	IM360UpdateOnline('1');
}

function IM360GoInvisible()
{
	document.getElementById('goinvisible').style.display = "none";
	document.getElementById('goinginvisible').style.display = "block";

	IM360UpdateOnline('2');
}

function IM360UpdateMemberListView(listObject)
{
	memberList = document.getElementById('memberlist');
	//Clear the memberlist of entries by removing the 2 child nodes we added last time this was run
	while(memberList.firstChild)
	{
		memberList.removeChild(memberList.firstChild);
	}

	friendList = document.getElementById('friendlist');
	//Clear the memberlist of entries by removing the 2 child nodes we added last time this was run
	while(friendList.firstChild)
	{
		friendList.removeChild(friendList.firstChild);
	}

	friendNotOnlineList = document.getElementById('friendnotonlinelist');
	while(friendNotOnlineList.firstChild)
	{
		friendNotOnlineList.removeChild(friendNotOnlineList.firstChild);
	}


	var friendObject = listObject.friendsOnline;
	for(var member in friendObject)
	{
		var friendNode = document.createElement("div");
		friendNode.className = "member";
		friendNode.username = friendObject[member].username;
		friendNode.status = friendObject[member].status;

		friendList.appendChild(friendNode);


		var homeImage = document.createElement("img");
		homeImage.className = "homeImage";
		homeImage.src = "http://www.sandalsgroups.com/modules/im360/images/home.gif";
		homeImage.onclick = IM360OpenHome;

		var usernameDiv = document.createElement("div");
		usernameDiv.className = "memberName";

		var onlineImage = document.createElement("img");
		onlineImage.className = "onlineImage";
		onlineImage.src = "http://www.sandalsgroups.com/modules/im360/images/talk.gif";
		onlineImage.onclick = ChatManager360.userClick;

		var usernameNode = document.createTextNode(friendObject[member].username);
		usernameDiv.appendChild(usernameNode);
		usernameDiv.onclick = ChatManager360.userClick;

		friendNode.appendChild(homeImage);
		friendNode.appendChild(usernameDiv);
		friendNode.appendChild(onlineImage);
	}

	var friendNotOnlineObject = listObject.friendsNotOnline;
	for(var member in friendNotOnlineObject)
	{
		var friendNode = document.createElement("div");
		friendNode.className = "member";
		friendNode.username = friendNotOnlineObject[member].username;
		friendNode.status = friendNotOnlineObject[member].status;

		friendNotOnlineList.appendChild(friendNode);


		var homeImage = document.createElement("img");
		homeImage.className = "homeImage";
		homeImage.src = "http://www.sandalsgroups.com/modules/im360/images/home.gif";
		homeImage.onclick = IM360OpenHome;

		var usernameDiv = document.createElement("div");
		usernameDiv.className = "memberNameNotOnline";

		var usernameNode = document.createTextNode(friendNotOnlineObject[member].username);
		usernameDiv.appendChild(usernameNode);

		friendNode.appendChild(homeImage);
		friendNode.appendChild(usernameDiv);
	}

	var memberObject = listObject.membersOnline;
	for(var member in memberObject)
	{
		var memberNode = document.createElement("div");
		memberNode.className = "member";
		memberNode.username = memberObject[member].username;
		memberNode.status = memberObject[member].status;

		memberList.appendChild(memberNode);


		var homeImage = document.createElement("img");
		homeImage.className = "homeImage";
		homeImage.src = "http://www.sandalsgroups.com/modules/im360/images/home.gif";
		homeImage.onclick = homeImage.onclick = IM360OpenHome;

		var usernameDiv = document.createElement("div");
		usernameDiv.className = "memberName";

		var onlineImage = document.createElement("img");
		onlineImage.className = "onlineImage";
		onlineImage.src = "http://www.sandalsgroups.com/modules/im360/images/talk.gif";
		onlineImage.onclick = ChatManager360.userClick;


		var usernameNode = document.createTextNode(memberObject[member].username);
		usernameDiv.appendChild(usernameNode);
		usernameDiv.onclick = ChatManager360.userClick;


		memberNode.appendChild(homeImage);
		memberNode.appendChild(usernameDiv);
		memberNode.appendChild(onlineImage);

	}
}

function IM360OpenHome()
{
	var username = this.parentNode.username;
	var status = this.parentNode.status;

	if(status == 6)
	{
		window.open(modelURL + username + "/profile.php", "memberwindow");
	}
	else
	{
		window.open(modelURL + username + "/index.php?mode=view", "memberwindow");
	}
}

function IM360ShowFriendRequestWindow(reqObject)
{
	var friendDiv = document.createElement("div");

	var friendHTML = '<br /><form action="javascript:IM360HandleFriendRequests();" id="reqform">'
		+ '<table width="95%" align="center" border="0" cellspacing="3px" cellpadding="2px">'
		+ '	<tr>'
		+ '		<td class="friendReqHeader">User</td>'
		+ '		<td class="friendReqHeader">View Profile</td>'
		+ '		<td class="friendReqHeader">Approve</td>'
		+ '		<td class="friendReqHeader">Deny</td>'
		+ '	</tr>';

	var count = 0;
	for(var i in reqObject.requests)
	{
		friendHTML += '<tr><td class="friendReqCell"><img src="' + reqObject.requests[i].headshot + '" width="25" border="0" style="float:left;margin:5px">';
		friendHTML += '<div style="font-weight:bold;">' + reqObject.requests[i].username + '</div>' + reqObject.requests[i].membertype + '</td>';
		friendHTML += '<td class="friendReqCell"><a href="' + reqObject.requests[i].profilelink + '" target="view">View Profile</a></td>';
		friendHTML += '<td class="friendReqCell"><input type="checkbox" id="approve'+count+'" name="approve[]" onclick="javascript:uncheckDeny('+count+');" value="' + reqObject.requests[i].reqid + '" /></td>';
		friendHTML += '<td class="friendReqCell"><input type="checkbox" id="deny'+count+'" name="deny[]" onclick="javascript:uncheckApprove('+count+');" value="' + reqObject.requests[i].reqid + '" /></td></tr>';
		count++;
	}

	friendHTML += '<tr><td colspan="4"><input type="submit" name="submitbutton" value="Submit" /></td></tr>';
	friendHTML += '</table>'
		+ '</form><br />';

	friendDiv.innerHTML = friendHTML;

	if(StatusID == 6)
	 frTitle = "New Friend Requests";
	else
	 frTitle = "New Membership Requests";

	reqWindow = new WindowManager360.Window(friendDiv, "windowtheme", frTitle, IM360FriendRequestWindowClose, 450)
}

function IM360FriendRequestWindowClose()
{
	setTimeout(IM360GetFriendRequests, 30000);
}
