Esempio n. 1
0
        private void ToggleButton_Click(object sender, RoutedEventArgs e)
        {
            Button button = sender as Button;
            ConversationMemberItem user   = button.DataContext as ConversationMemberItem;
            ConfirmDialog          dialog = new ConfirmDialog("Approve user " + user.FullName + " become host of coversation");
            bool?result = dialog.ShowDialog();

            if (result == true)
            {
                using (HttpClient client = new HttpClient())
                {
                    client.BaseAddress = new Uri(Ultils.url);
                    client.DefaultRequestHeaders.Accept.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AppInstance.getInstance().GetUser().Token);
                    ConversationMember memberinconversation = new ConversationMember()
                    {
                        UserIds = user.Id
                    };
                    HttpResponseMessage response = client.PutAsJsonAsync("/api/Conversations/HostMember/" + ConversationId, memberinconversation).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        LoadUserList();
                    }
                    else
                    {
                        _404Mess err = response.Content.ReadAsAsync <_404Mess>().Result;
                        System.Windows.MessageBox.Show(err.Message);
                    }
                }
            }
        }
Esempio n. 2
0
        private void LoadUserList()
        {
            Users = new ObservableCollection <ConversationMemberItem>();
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri(Ultils.url);
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AppInstance.getInstance().GetUser().Token);
                HttpResponseMessage response = client.GetAsync("/api/Conversations/" + ConversationId, HttpCompletionOption.ResponseContentRead).Result;
                if (response.IsSuccessStatusCode)
                {
                    Conversation conversation = response.Content.ReadAsAsync <Conversation>().Result;
                    ConversationHost = conversation.HostUserId;
                }
            }

            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri(Ultils.url);
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AppInstance.getInstance().GetUser().Token);
                HttpResponseMessage response = client.GetAsync("/api/Conversations/Members?id=" + ConversationId, HttpCompletionOption.ResponseContentRead).Result;
                //HttpResponseMessage response = client.PostAsJsonAsync("/api/ConversationsView/Members", AppInstance.getInstance().getUser().Id).Result;
                List <User> users = response.Content.ReadAsAsync <List <User> >().Result;
                foreach (User Conv_users in users)
                {
                    ConversationMemberItem mem = new ConversationMemberItem()
                    {
                        FullName    = Conv_users.Username,
                        Id          = Conv_users.Id,
                        isAdmin     = false,
                        Role        = Conv_users.Role,
                        Username    = Conv_users.Username,
                        AllowDelete = true,
                        Avatar      = ImageSupportInstance.getInstance().GetUserImageFromId(Conv_users.Id)
                    };
                    //if (mem.Id == AppInstance.getInstance().GetUser().Id)
                    //{
                    //    mem.AllowDelete = false;
                    //}
                    if (mem.Id != ConversationHost)
                    {
                        mem.AllowToapprove = true;
                    }
                    Users.Add(mem);
                }
            }
            lvUser.ItemsSource = Users;
        }
Esempio n. 3
0
        private void deleteuser_Click(object sender, RoutedEventArgs e)
        {
            Button button = sender as Button;
            ConversationMemberItem user = button.DataContext as ConversationMemberItem;
            string content = "Kick user " + user.FullName;


            if (user.Id == AppInstance.getInstance().GetUser().Id)
            {
                content = "Out this conversation ";
            }
            ConfirmDialog dialog = new ConfirmDialog(content);
            bool?         result = dialog.ShowDialog();

            if (result == true)
            {
                if (user.Id == ConversationHost)
                {
                    System.Windows.MessageBox.Show("Host cannot out the conversation");
                    return;
                }

                using (HttpClient client = new HttpClient())
                {
                    client.BaseAddress = new Uri(Ultils.url + "/api/Conversations/Members");
                    client.DefaultRequestHeaders.Accept.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AppInstance.getInstance().GetUser().Token);

                    HttpResponseMessage response = client.DeleteAsync("/api/Conversations/Members/" + ConversationId + "/" + user.Id).Result;
                    if (response.IsSuccessStatusCode)
                    {
                    }
                    else
                    {
                        _404Mess mess = response.Content.ReadAsAsync <_404Mess>().Result;
                        System.Windows.MessageBox.Show(mess.Message);
                    }
                }
            }
        }