Пример #1
0
        public static string AcceptFriendRequest(int id, string membershipId)
        {
            IFriendRepository friendRepo = new EFFriendRepository();
            var friend = friendRepo.Friends.FirstOrDefault(f => f.Id == id);


            // assert exists
            if (friend == null)
            {
                return("Error");
            }

            // assert this was sent to you
            else if (friend.FriendMembershipId == membershipId)
            {
                friend.IsAccepted = true;
                friendRepo.SaveFriend(friend);

                var me        = PlayerProcedures.GetPlayerFromMembership(membershipId);
                var newFriend = PlayerProcedures.GetPlayerFromMembership(friend.OwnerMembershipId);

                if (me != null && newFriend != null)
                {
                    PlayerLogProcedures.AddPlayerLog(me.Id, $"You have accepted {newFriend.GetFullName()}'s friend request.", false);
                    PlayerLogProcedures.AddPlayerLog(newFriend.Id, $"{me.GetFullName()} has accepted your friend request!", true);
                }

                return("Success");
            }
            else
            {
                return("");
            }
        }
Пример #2
0
        public static bool AddFriend(Player player, string membershipId)
        {
            IFriendRepository friendRepo = new EFFriendRepository();

            var friend = friendRepo.Friends.FirstOrDefault(f => (f.OwnerMembershipId == membershipId && f.FriendMembershipId == player.MembershipId) || (f.FriendMembershipId == membershipId && f.OwnerMembershipId == player.MembershipId));

            if (friend != null)
            {
                // We're already friends, abort!
                return(false);
            }

            // We're not friends, let's add a friendship request
            friend = new Friend
            {
                OwnerMembershipId      = membershipId,
                FriendMembershipId     = player.MembershipId,
                IsAccepted             = false,
                FriendsSince           = DateTime.UtcNow,
                FriendNicknameForOwner = "[UNASSIGNED]",
                OwnerNicknameForFriend = "[UNASSIGNED]"
            };

            friendRepo.SaveFriend(friend);
            return(true);
        }
Пример #3
0
        public static string FriendSetNicknameOfOwner(int id, string input)
        {
            IFriendRepository friendRepo = new EFFriendRepository();
            var friend = friendRepo.Friends.FirstOrDefault(f => f.Id == id);

            friend.FriendNicknameForOwner = input;
            friendRepo.SaveFriend(friend);
            return("You set the nickname of this friend to '" + input + "'.");
        }