public JsonResult AcceptInvite(int inviteID) { var invite = partyInviteRepository.GetById(inviteID); var citizen = SessionHelper.LoggedCitizen; MethodResult result; if ((result = partyService.CanAcceptInvite(invite, citizen)).IsError) { return(JsonError(result)); } partyService.AcceptInvite(invite); return(JsonRedirect(nameof(View), "Party", new { partyID = invite.PartyID })); }
public async Task AcceptInvite(Interaction interaction) { var party = _partyRepository.GetParty(int.Parse(interaction.Value)); var user = _userRepository.GetUser(interaction.UserId); var response = _partyService.AcceptInvite(party, user); await _slack.SendEphemeralMessage(string.Format(DougMessages.JoinedYourParty, _userService.Mention(user)), party.UserId, interaction.ChannelId); await _slack.SendEphemeralMessage(response.Message, user.Id, interaction.ChannelId); await _slack.DeleteInteractionMessage(interaction.ResponseUrl); }