byte[] GetFriendPerms(Dictionary<string, object> request)
{
if (!VerifyServiceKey (request))
return FailureResult ();
UUID principalID = UUID.Zero;
if (request.ContainsKey ("PRINCIPALID"))
UUID.TryParse (request["PRINCIPALID"].ToString (), out principalID);
else
{
MainConsole.Instance.WarnFormat ("[HGFRIENDS HANDLER]: no principalID in request to get friend perms");
return FailureResult ();
}
UUID friendID = UUID.Zero;
if (request.ContainsKey ("FRIENDID"))
UUID.TryParse (request["FRIENDID"].ToString (), out friendID);
else
{
MainConsole.Instance.WarnFormat ("[HGFRIENDS HANDLER]: no friendID in request to get friend perms");
return FailureResult ();
}
List<FriendInfo> friendsInfo = m_FriendsService.GetFriends (principalID);
foreach (FriendInfo finfo in friendsInfo)
{
if (finfo.Friend.StartsWith (friendID.ToString ()))
return SuccessResult (finfo.TheirFlags.ToString ());
}
return FailureResult ("Friend not found");
}