Esempio n. 1
0
        public override void OnNavigatedTo(INavigationParameters parameters)
        {
            if (parameters.ContainsKey("nav"))
            {
                UserProfile = parameters.GetValue <User>("nav");
                Username    = UserProfile.Username;
                Avatar      = UserProfile.Avatar;
                Id          = UserProfile.Id;
                Email       = UserProfile.Email;
            }
            if (parameters.ContainsKey("navFromChatList"))
            {
                UserFromChatList = parameters.GetValue <DisplayChat>("navFromChatList");
                Username         = UserFromChatList.Name;
                Email            = UserFromChatList.Email;
                Avatar           = UserFromChatList.Avatar;
                Id = UserFromChatList.Id;
            }

            MainThread.BeginInvokeOnMainThread(async() =>
            {
                var profilepic = await remoteService.GetProfilePicture(Username);
                if (profilepic != null)
                {
                    Avatar = profilepic.Avatar;
                    Status = profilepic.Status;
                }
            });
        }
Esempio n. 2
0
        private async void RetrieveMessage()
        {
            IsBusy = true;
            var chats = await remoteService.RetrieveMessage();

            chats.Reverse();
            ChatUsernameList.Clear();
            ChatList.Clear();

            IsBusy = false;
            foreach (var item in chats)
            {
                if (item.SenderId == Settings.KeySettings)
                {
                    var chat = new DisplayChat()
                    {
                        Name = item.Receiver,
                        Id   = item.ReceiverId,
                        //Email = item.ReceiverEmail,
                        Message = item.Message,
                        Avatar  = item.ReceiverAvatar
                    };
                    if (ChatUsernameList.Count == 0 && ChatList.Count == 0)
                    {
                        ChatUsernameList.Add(item.Receiver);
                        ChatList.Add(chat);
                    }
                    else
                    {
                        if (!ChatUsernameList.Contains(item.Receiver))
                        {
                            ChatUsernameList.Add(item.Receiver);
                            ChatList.Add(chat);
                        }
                    }
                }
                else if (item.ReceiverId == Settings.KeySettings)
                {
                    var chat = new DisplayChat()
                    {
                        Name = item.Sender,
                        Id   = item.SenderId,
                        //Email = item.SenderEmail,
                        Message = item.Message,
                        Avatar  = item.SenderAvatar
                    };

                    if (ChatUsernameList.Count == 0 && ChatList.Count == 0)
                    {
                        ChatUsernameList.Add(item.Sender);
                        ChatList.Add(chat);
                    }
                    else
                    {
                        if (!ChatUsernameList.Contains(item.Sender))
                        {
                            ChatUsernameList.Add(item.Sender);
                            ChatList.Add(chat);
                        }
                    }
                }
            }
        }