public async Task <IActionResult> Accept([FromRoute] Guid fromUserId) { var result = await _socialService.AcceptFriendshipRequestAsync(await GetAuthenticatedUserAccount(), fromUserId); if (result.Failed) { return(BadRequest()); } await _hubContext.Clients .User(fromUserId.ToString()) .SendAsync( FriendshipHub.FriendshipRequestAcceptedMessage, FriendshipRequestViewModel.FromEntity(result.Data) ); return(Ok()); }
public async Task <IActionResult> Delete([FromRoute] Guid friendId) { var result = await _socialService.RemoveFriend(await GetAuthenticatedUserAccount(), friendId); if (result.Failed) { return(BadRequest(new ValidationErrorResponse(result.Error))); } await _hubContext.Clients .User(friendId.ToString()) .SendAsync( FriendshipHub.FriendshipRemovedMessage, FriendshipRequestViewModel.FromEntity(result.Data) ); return(NoContent()); }
public async Task <IActionResult> Send([FromBody] SendFriendshipRequestDto friendshipRequestDto) { friendshipRequestDto.From = await GetAuthenticatedUserAccount(); var result = await _socialService.SendFriendshipRequest(friendshipRequestDto); if (result.Failed) { return(BadRequest(new ValidationErrorResponse(result.Error))); } await _hubContext.Clients .User(result.Data.ToId.ToString()) .SendAsync( FriendshipHub.FriendshipRequestReceivedMessage, FriendshipRequestViewModel.FromEntity(result.Data) ); return(Ok()); }