Example #1
0
 public FriendInformation(string recv_user, string req_user)
 {
     recieved_user_id  = recv_user;
     friend_id         = Guid.NewGuid().ToString();
     requested_user_id = req_user;
     friend_status     = FriendStatus.PENDING;
 }
Example #2
0
        public Friend ChangeFriendStatus(int userId, FriendStatus status)
        {
            // TODO: Write code to test all the new functions in UsersManager and FriendsRepository
            return(Operation(() =>
            {
                CheckIsUserAuthenticated();
                CheckDoesUserExist(userId);

                if (!serverManager.DoesFriendExist(LoggedUser.Id, userId))
                {
                    throw new Exception("No such friendship exists");
                }

                var friend = serverManager.GetExistingFriend(LoggedUser.Id, userId);

                if (!friend.IsChangePossible(status, LoggedUser.Id))
                {
                    throw new Exception("Friend status change is not possible");
                }

                // Updating the database with the changed status
                serverManager.ChangeFriendStatus(friend, status);

                // Notifying the other user the friend status has changed
                var friendUserId = friend.UserId1 != LoggedUser.Id ? friend.UserId1 : friend.UserId2;
                NotifyUserFriendStatusChanged(friendUserId, friend, LoggedUser);

                return friend;
            }));
        }
Example #3
0
        public void SetStatus(FriendStatus friendStatus)
        {
            _friendStatus = friendStatus;
            switch (friendStatus)
            {
            case FriendStatus.Normal:
                button.GetComponentInChildren <Text>().text = "Select";
                break;

            case FriendStatus.OnFight:
                button.GetComponentInChildren <Text>().text = "Fight";
                break;

            case FriendStatus.OnHold:
                button.GetComponentInChildren <Text>().text = "Accept";
                break;

            case FriendStatus.OnSelect:
                button.GetComponentInChildren <Text>().text = "UnSelect";
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(friendStatus), friendStatus, null);
            }
        }
Example #4
0
 public FriendInfo(ObjectGuid accountGuid, SocialFlag flags, string note)
 {
     WowAccountGuid = accountGuid;
     Status         = FriendStatus.Offline;
     Flags          = flags;
     Note           = note;
 }
Example #5
0
 public static void updateStatus(string steamid, FriendStatus status, string modname = null)
 {
     foreach (var friendBrowser in Browsers.Find(m => m.user != null && m.friendlist != null && m.friendlist.Any(x => x.id == steamid)))
     {
         lock (friendBrowser.friendlist)
         {
             var friend = friendBrowser.friendlist.Find(f => f.id == steamid);
             if (friend.status != status || friend.modname != modname)
             {
                 List <String> fields = new List <string>();
                 if (status != friend.status)
                 {
                     friend.status = status;
                     fields.Add("status");
                 }
                 if (modname != null && modname != friend.modname)
                 {
                     friend.modname = modname;
                     fields.Add("modname");
                 }
                 TransmitFriendUpdate(friend, fields.ToArray());
             }
         }
     }
 }
        protected override void InternalParse()
        {
            Output.AppendLine("Mask:  " + (SocialFlag)Reader.ReadUInt32());
            int size = Reader.ReadInt32();
            Output.AppendLine("Friends Count: " + size);
            for (int i = 0; i < size; ++i)
            {
                Output.AppendLine();
                Output.AppendLine("Player GUID: " + Reader.ReadGuid());
                SocialFlag sflag = (SocialFlag)Reader.ReadUInt32();
                Output.AppendFormatLine("Social Flag: {0} ({0:D})", sflag);
                Output.AppendLine("Note: " + Reader.ReadCString());
                if ((sflag & SocialFlag.Friend) != 0)
                {
                    FriendStatus second = (FriendStatus)Reader.ReadByte();
                    Output.AppendLine("Friend Status: " + second);
                    if ((byte)second > 0)
                    {
                        Output.AppendFormatLine("Area:  {0:D} {0}", (Zones)Reader.ReadUInt32());
                        Output.AppendLine("Level: " + Reader.ReadUInt32());
                        Output.AppendFormatLine("Class: {0:D} {0}", (Classes)Reader.ReadUInt32());
                    }
                }
            }

            if (!Reader.IsRead)
                Output.AppendLine("Bot Check ARC4 Key: " + Reader.ReadBytes(16).ToHexString());
        }
        public ActionResult UpdateFriend(int id, int status)
        {
            var service = CreateFriendService();
            var model = service.GetFriendListModel(id);

            FriendStatus newStatus = FriendStatus.Pending;

            if(status == 1) {

                newStatus = FriendStatus.Accepted;

            } else if (status == 2) {

                newStatus = FriendStatus.Declined;

            }

            
            if (service.PostUpdateFriend(model, newStatus))
            {
                TempData["SaveResult"] = "You are connected";
                return RedirectToAction("Index");
            };

            ModelState.AddModelError("", "Sorry something went wrong. Please try again.");

            return View(model);
        }
Example #8
0
        public void SetFriendStatus(FriendStatus friendStatus)
        {
            deactivateAllElements();
            switch (friendStatus)
            {
            case FriendStatus.None:
                goToNoneState();
                break;

            case FriendStatus.Self:
                break;

            case FriendStatus.OutgoingInvite:
                goToPendingState();
                break;

            case FriendStatus.IncomingInvite:
                IncomingRequestContainer.SetActive(value: true);
                break;

            case FriendStatus.Friend:
                goToFriendsState();
                break;
            }
        }
 static private string ST(string friendname, FriendStatus stat)
 {
     if (stat == FriendStatus.Online)
     {
         return("Online: ".T(EDTx.JournalEntry_Online) + friendname);
     }
     else if (stat == FriendStatus.Offline)
     {
         return("Online: ".T(EDTx.JournalEntry_Offline) + friendname);
     }
     else if (stat == FriendStatus.Lost)
     {
         return("Unfriended: ".T(EDTx.JournalEntry_Unfriended) + friendname);
     }
     else if (stat == FriendStatus.Declined)
     {
         return("Declined: ".T(EDTx.JournalEntry_Declined) + friendname);
     }
     else if (stat == FriendStatus.Requested)
     {
         return("Requested Friend: ".T(EDTx.JournalEntry_RequestedFriend) + friendname);
     }
     else if (stat == FriendStatus.Added)
     {
         return("Added Friend: ".T(EDTx.JournalEntry_AddedFriend) + friendname);
     }
     else
     {
         return("??");
     }
 }
Example #10
0
        public IList <Friend> Search(RegisteredUser user, string friend, FriendStatus status, int limit)
        {
            ICriteria crit = NHibernateSession.Current.CreateCriteria(typeof(Friend));

            crit.SetFetchMode("User", FetchMode.Join);
            crit.Add(Restrictions.Eq("BasicUser.Id", user.Id));

            crit.Add(Expression.Not(Expression.Eq("Status", FriendStatus.Denied)));

            if (status != FriendStatus.All)
            {
                crit.Add(Expression.Eq("Status", status));
            }

            Disjunction d = new Disjunction();

            if (!string.IsNullOrEmpty(friend))
            {
                ICriteria critUser = crit.CreateCriteria("User");
                d.Add(Expression.Like("FirstName", friend, MatchMode.Anywhere));
                d.Add(Expression.Like("LastName", friend, MatchMode.Anywhere));
                d.Add(Expression.Like("EmailAddress", friend, MatchMode.Anywhere));
                critUser.Add(d);
            }

            if (limit > 0)
            {
                crit.SetMaxResults(limit);
            }

            return(crit.List <Friend>());
        }
        protected override void ParseBody(ByteBuffer buf)
        {
#if DEBUG
            Client.LogManager.Log(ToString() + " " + Utils.Util.ToHex(buf.ToByteArray()));
#endif
            // 当前好友列表位置
            Finished = buf.Get() == QQGlobal.QQ_POSITION_ONLINE_LIST_END;
            Position = 0;
            //只要还有数据就继续读取下一个friend结构
            OnlineFriends = new List <FriendStatus>();
            while (buf.HasRemaining())
            {
                //int QQ = buf.GetInt();
                FriendStatus entry = new FriendStatus();
                //if(Client.QQUser.Friends.Get(QQ)!=null)
                //    entry = Client.QQUser.Friends.Get(QQ).FriendStatus;//new FriendStatus();
                entry.Read(buf);
                // 添加到List
                OnlineFriends.Add(entry);
                // 如果还有更多好友,计算position
                if (!Finished)
                {
                    Position = Math.Max(Position, entry.QQ);
                }
            }
            Position++;
        }
Example #12
0
        public async Task <ActionResult <FriendStatus> > GetFriendStatus([FromBody] DualIdModel model)
        {
            var token  = ExtractHeader(HttpContext, "Authorization", ',', 1);
            var claims = new List <BusinessModels.UserAccessControl.UserClaimModel>();

            claims.Add(new BusinessModels.UserAccessControl.UserClaimModel("Id", model.UserId.ToString()));
            var accessPolicy = _authorizationPolicyManager.ConfigureCustomPolicy(new List <string>()
            {
                "user_profile.friends_list.status:read"
            }, claims);

            if (!_authorizationResolutionManager.Authorize(token, accessPolicy))
            {
                return(StatusCode(403));
            }
            try
            {
                string status = await _friendListManager.GetFriendStatusUserIdAsync(model.UserId, model.FriendId);

                FriendStatus friendStatus = new FriendStatus();
                friendStatus.Status = status;
                return(Ok(friendStatus));
            }
            catch
            {
                return(StatusCode(404));
            }
        }
Example #13
0
        public static FriendStatus GetFriendshipStatus(int thisUser, int thatUser)
        {
            FriendStatus status = new FriendStatus()
            {
                ThisUser = thisUser,
                ThatUser = thatUser
            };

            if (GetThisUsersFriendsIds(thisUser).Contains(thatUser) == true)
            {
                status.RequestStatusType = FriendRequestStatusType.Friends;
            }
            else
            {
                var allRequests = GetActiveFriendRequestsForUser(thisUser).OrderByDescending(q => q.InsertDate);

                if (allRequests != null && allRequests.Count() > 0)
                {
                    if (allRequests.FirstOrDefault(q => q.RequestSentToUserID == thisUser) != null)
                    {
                        status.RequestStatusType = FriendRequestStatusType.TheyRequested;
                    }
                    else
                    {
                        status.RequestStatusType = FriendRequestStatusType.Requested;
                    }
                }
            }

            return(status);
        }
Example #14
0
 public FriendInformation(string recv_user, string req_user, string f_id, FriendStatus status)
 {
     recieved_user_id  = recv_user;
     friend_id         = f_id;
     requested_user_id = req_user;
     friend_status     = status;
 }
Example #15
0
        public FindUsersModel(FriendStatus status)
        {
            Status = status;

            ButtonColor = GetColorForButton();

            ButtonText = GetTextForButton();
        }
Example #16
0
 private void updateFriendStatus()
 {
     if (findUserItem != null)
     {
         FriendStatus friendStatus = FriendsDataModelService.GetFriendStatus(handle);
         findUserItem.SetFriendStatus(friendStatus);
     }
 }
Example #17
0
 public Result<List<int>> GetListFriendName(int myId, FriendStatus? status)
 {
     var repo = Repo.Instance;
     using (var db = repo.OpenConnectionFromPool())
     {
         return repo.GetFriendNameList(db, myId, status.HasValue ? Helper.GetDescription(status.Value) : string.Empty);
     }
 }
Example #18
0
 internal Friend(string gamertag, Xuid onlineXuid, FriendRequestStatus requestStatus, FriendStatus friendStatus, string richPresence, uint titleId)
     : base(gamertag, onlineXuid)
 {
     this.RequestStatus = requestStatus;
     this.FriendState = friendStatus;
     this.RichPresence = richPresence;
     this.TitleId = titleId;
 }
Example #19
0
 public Friend(string _userID, string _userAccount, string _userNickName, string _processID, FriendStatus _status)
 {
     userID       = _userID;
     userAccount  = _userAccount;
     userNickName = _userNickName;
     processID    = _processID;
     status       = _status;
 }
Example #20
0
    public void OnKidnapped()
    {
        GetComponent <NPC>().StateMachine.Play("Idle");
        headAnimator.State = HeadAnimator.AnimationState.Idle;

        Status         = FriendStatus.Kidnapped;
        aiPath.canMove = false;
    }
Example #21
0
 /// <summary>
 /// Creates a new <see>FriendUser</see>.
 /// </summary>
 /// <param name="index">The 0-based index of the user's location.</param>
 /// <param name="accountName">The account name of the friend.</param>
 /// <param name="status">The friend's current status.</param>
 /// <param name="locationType">The friend's current location information.</param>
 /// <param name="product">The product with which the friend is currently logged on, otherwise <see langword="null" />.</param>
 /// <param name="location">The name of the friend's current location.</param>
 public FriendUser(int index, string accountName, FriendStatus status, FriendLocation locationType, Product product, string location)
 {
     m_index        = index;
     m_acctName     = accountName;
     m_status       = status;
     m_location     = locationType;
     m_product      = product;
     m_locationName = location;
 }
Example #22
0
 /// <summary>
 /// Creates a new <see>FriendUser</see>.
 /// </summary>
 /// <param name="index">The 0-based index of the user's location.</param>
 /// <param name="accountName">The account name of the friend.</param>
 /// <param name="status">The friend's current status.</param>
 /// <param name="locationType">The friend's current location information.</param>
 /// <param name="product">The product with which the friend is currently logged on, otherwise <see langword="null" />.</param>
 /// <param name="location">The name of the friend's current location.</param>
 public FriendUser(int index, string accountName, FriendStatus status, FriendLocation locationType, Product product, string location)
 {
     m_index = index;
     m_acctName = accountName;
     m_status = status;
     m_location = locationType;
     m_product = product;
     m_locationName = location;
 }
Example #23
0
        public List <Friend> GetFriends(FriendStatus status, int friendCount)
        {
            return(Operation(() =>
            {
                CheckIsUserAuthenticated();

                return serverManager.GetFriendsOfUserByStatus(LoggedUser.Id, status, friendCount).ToList();
            }));
        }
Example #24
0
        private void button3_Click(object sender, EventArgs e)
        {
            var n = new FriendStatus {
                Name = textBox7.Text
            };

            textBox7.Clear();

            this.FriendStatusList.Add(n);
        }
Example #25
0
 public List<SimpleCustomerAccount> GetSimpleFriendList(int myId, FriendStatus? status)
 {
     var repo = Repo.Instance;
     using (var db = repo.OpenConnectionFromPool())
     {
         return repo.GetSimpleFriendList(db, myId, status.HasValue
             ? Helper.GetDescription(status.Value)
             : string.Empty).Data;
     }
 }
Example #26
0
 public void PresenceDataUpdated(FriendStatus friendStatus, PresenceData presenceData)
 {
     playerWorld = presenceData.World;
     if (friendStatus == FriendStatus.Friend)
     {
         bool flag = isPresenceDataValidForJump(presenceData);
         JumpToFriendButton.SetActive(flag);
         InactiveJumpToFriendButton.SetActive(!flag);
     }
 }
Example #27
0
    void OnInteract()
    {
        switch (Status)
        {
        case FriendStatus.Kidnapped:
            Status = FriendStatus.FollowingPlayer;

            aiPath.canMove = true;
            break;
        }
    }
Example #28
0
        public static Friend Convert(JsonData jsonData)
        {
            string userID = string.Empty;

            if (jsonData.JsonDataContainsKey(JsonKey.friendID))
            {
                userID = jsonData[JsonKey.friendID].ToString();
            }
            string userAccount = string.Empty;

            if (jsonData.JsonDataContainsKey(JsonKey.account))
            {
                userAccount = jsonData[JsonKey.account].ToString();
            }

            string userNickName = string.Empty;

            if (jsonData.JsonDataContainsKey(JsonKey.nickname))
            {
                userNickName = jsonData[JsonKey.nickname].ToString();
            }
            string processID = string.Empty;

            if (jsonData.JsonDataContainsKey(JsonKey.processID))
            {
                processID = jsonData[JsonKey.processID].ToString();
            }

            FriendStatus status;

            if (jsonData.JsonDataContainsKey(JsonKey.friendStatus))
            {
                switch (jsonData[JsonKey.friendStatus].ToString())
                {
                case "completed": status = FriendStatus.Completed; break;

                case "requested": status = FriendStatus.Requested; break;

                case "pending": status = FriendStatus.Pending; break;

                default:
                    status = FriendStatus.None;
                    Debug.LogError(jsonData[JsonKey.friendStatus].ToString() + "Status를 찾을 수 없음"); break;
                }
            }
            else
            {
                status = FriendStatus.None;
            }

            return(new Friend(userID, userAccount, userNickName, processID, status));
        }
Example #29
0
        public bool CheckFriendship(int MemberId, int FriendId, FriendStatus Status)
        {
            string sql = "select * from Friends where MemberId={0} and FriendId={1} and Status={2}";

            sql = string.Format(sql, MemberId, FriendId, (int)Status);
            DataTable friends = DBUtils.GetDataSet(sql, cte.lib).Tables[0];

            if (friends.Rows.Count > 0)
            {
                return(true);
            }
            return(false);
        }
Example #30
0
        public static string ToDomainString(FriendStatus status)
        {
            switch (status)
            {
            case FriendStatus.Approved:  return(GSFriendStatus.APPROVED);

            case FriendStatus.Denied:    return(GSFriendStatus.DENIED);

            case FriendStatus.Banned:    return(GSFriendStatus.BANNED);

            default: return(GSFriendStatus.PENDING);
            }
        }
Example #31
0
 private FriendStatus updateFriendStatus()
 {
     FriendStatus = FriendsDataModelService.GetFriendStatus(Handle);
     if (DetailsController != null)
     {
         DetailsController.SetFriendStatus(FriendStatus);
     }
     if (ActionListController != null)
     {
         ActionListController.SetFriendStatus(FriendStatus);
     }
     return(FriendStatus);
 }
Example #32
0
 private void setUpFindUserItem()
 {
     if (findUserItem != null)
     {
         FriendStatus friendStatus = FriendsDataModelService.GetFriendStatus(handle);
         findUserItem.SetPlayer(handle);
         findUserItem.SetFriendStatus(friendStatus);
         findUserItem.SetName(dataEntityCollection.GetComponent <DisplayNameData>(handle).DisplayName);
         findUserItem.SetPreloaderActive(isActive: true);
         findUserItem.SetAvatarIconActive(isActive: false);
         return;
     }
     throw new MissingReferenceException("Find user result prefab not found");
 }
Example #33
0
        private void LogBIJoinIgloo()
        {
            string tier = "player";

            if (!isLocalPlayer)
            {
                PlayerCardController componentInParent = GetComponentInParent <PlayerCardController>();
                if (componentInParent != null)
                {
                    FriendStatus friendStatus = componentInParent.FriendStatus;
                    tier = ((friendStatus != FriendStatus.Friend) ? "other" : "friend");
                }
            }
            Service.Get <ICPSwrveService>().Action("igloo", "visit", tier, "playercard");
        }
Example #34
0
    protected override float UpdateWeighting()
    {
        float        result       = 0f;
        FriendStatus friendStatus = FriendsDataModelService.GetFriendStatus(request.Data.PenguinHandle);

        if (friendStatus == FriendStatus.Friend)
        {
            result = Data.FriendWeighting;
        }
        else if (friendStatus == FriendStatus.IncomingInvite || friendStatus == FriendStatus.OutgoingInvite)
        {
            result = Data.PendingFriendWeighting;
        }
        return(result);
    }
Example #35
0
        public Dictionary<string, object> GetFriendList(string myUsername, FriendStatus? status)
        {
            var repo = Repo.Instance;
            using (var db = repo.OpenConnectionFromPool())
            {
                List<string> lstFriendname = repo.GetFriendNameList(db, myUsername, status.HasValue ? Helper.GetDescription(status.Value) : string.Empty).Data;

                if (lstFriendname != null && lstFriendname.Any())
                {
                    Dictionary<string, object> result = new Dictionary<string, object>();
                    foreach (var username in lstFriendname)
                    {
                        var user = repo.GetCustomerByUserName(db, username).Data;
                        result.Add(user.username, new
                        {
                            status = Helper.GetDescription(status.Value),
                            bio = user.bio,
                            account = user.username,
                            uid = user.id,
                            locale = !string.IsNullOrEmpty(user.locale) ? user.locale : "en",
                            gender = user.gender,
                            cover = user.GetValidCoverUrl(),
                            inviter = user.inviter_username,
                            vip = user.vip,
                            avatar = user.GetValidAvatarUrl(),
                            country_code = user.country_code,
                            country_name = user.country_name,
                            is_venvici_member = user.is_venvici_member,
                            nickname = user.nickname,
                            email = user.email
                        });
                    }
                    return result;
                }
                return null;
            }
        }
Example #36
0
		private void button3_Click(object sender, EventArgs e)
		{
			var n = new FriendStatus { Name = textBox7.Text };

			textBox7.Clear();

			this.FriendStatusList.Add(n);
		}
Example #37
0
 public Result<List<string>> GetListFriendName(string myUsername, FriendStatus? status)
 {
     var repo = Repo.Instance;
     using (var db = repo.OpenConnectionFromPool())
     {
         return repo.GetFriendNameList(db, myUsername, status.HasValue ? Platform.Utility.Helper.GetDescription(status.Value) : string.Empty);
     }
 }