public JsonResult RemoveInvite(int citizenID, int partyID) { var invite = partyInviteRepository.FirstOrDefault(i => i.CitizenID == citizenID && i.PartyID == partyID); MethodResult result; if ((result = partyService.CanRemoveInvite(invite, SessionHelper.LoggedCitizen)).IsError) { return(JsonError(result)); } var citizenName = invite.Citizen.Entity.Name; partyService.RemoveInvite(invite); return(JsonSuccess($"You successfully removed {citizenName} invite.")); }
public MethodResult CanInviteCitizen(Citizen invitingCitizen, Party party, Citizen invitedCitizen) { if (invitingCitizen == null) { return(new MethodResult("Citizen does not exist!")); } if (party == null) { return(new MethodResult("Party does not exist!")); } if (invitedCitizen == null) { return(new MethodResult("Citizen does not exist!")); } if (invitedCitizen.PartyMember != null) { return(new MethodResult("Citizen is already member of another party!")); } MethodResult result; if ((result = IsPartyMember(invitingCitizen, party)).IsError) { return(result); } if (party.JoinMethodID != (int)JoinMethodEnum.Invite) { return(new MethodResult("Party does not allow to invite people!")); } var invite = partyInviteRepository.FirstOrDefault(i => i.PartyID == party.ID && i.CitizenID == invitedCitizen.ID); if (invite != null) { return(new MethodResult("Citizen is already invited!")); } return(MethodResult.Success); }