private void RefuseFriendButton_Click(object sender, EventArgs e) { PendingFriendRequest friendRequest = (PendingFriendRequest)((Button)sender).DataContext; PendingFriendRequestDao.Refuse(friendRequest.id); PendingFriendRequestsList.Remove(friendRequest); }
private void AcceptFriendButton_Click(object sender, EventArgs e) { PendingFriendRequest friendRequest = (PendingFriendRequest)((Button)sender).DataContext; PendingFriendRequestDao.Accept(friendRequest.id); PendingFriendRequestsList.Remove(friendRequest); FriendDao.Get(); FriendDao.GetUsersExceptFriends(); }
async Task ApproveFriendRequest(PendingFriendRequest pendingFriendRequest) { if (IsBusy) { return; } if (!(await CheckConnectivity("Check connectivity", "Unable to update profile, please check internet and try again"))) { return; } if (!await DisplayAlert("Approve friend request?", $"Are you sure you want to approve {pendingFriendRequest.Name}'s request?", "Yes, approve", "Cancel")) { return; } Analytics.TrackEvent("FriendRequest", new Dictionary <string, string> { ["type"] = "approve" }); IsBusy = true; try { await DataService.ApproveFriendRequestAsync(pendingFriendRequest.RequesterPublicKey); FriendRequests.Remove(pendingFriendRequest); DataService.ClearCache(DataService.FriendRequestKey); forceRefresh = true; SettingsService.FriendRequestCount = FriendRequests.Count == 0 ? string.Empty : FriendRequests.Count.ToString(); SettingsService.ForceRefreshFriends = true; } catch (HttpResponseException hrex) when(!string.IsNullOrWhiteSpace(hrex.Message)) { await DisplayAlert("Uh oh, turbulence", hrex.Message); } catch (Exception ex) { await DisplayAlert("Uh oh, turbulence", "Looks like something went wrong. Check internet and try again."); Crashes.TrackError(ex); } finally { IsBusy = false; } OnPropertyChanged(nameof(ShowNoFriends)); }
public void LoadPendingFriendRequests(IRestResponse response) { if (response.StatusCode == HttpStatusCode.OK) { PendingFriendRequestsList.Clear(); JArray responseRequests = JArray.Parse(response.Content); for (int i = 0; i < responseRequests.Count; i++) { dynamic data = JObject.Parse(responseRequests[i].ToString()); PendingFriendRequest friendRequest = new PendingFriendRequest { notified = data["notified"], id = data["id"], userName = data["userName"], profileImage = data["profileImage"], }; PendingFriendRequestsList.Add(friendRequest); } PendingFriendRequestsContainer.ItemsSource = PendingFriendRequestsList; } }