private async Task QuitOrDeclineTeamNotify(long teamId, User user, UserTeam userTeam) { var ownerId = await context.Teams.GetOwnerId(teamId); var items = new List <NoticeItem> { NoticeItem.User(user), NoticeItem.Team(userTeam.Team) }; switch (userTeam.UserAction) { case UserActionEnum.RejectedTeamRequest: await notificationSender.Send(ownerId, NotifyType.Destructive, "{0} отказался от приглашения в команду {1}", user.Photo100, items); break; case UserActionEnum.QuitTeam: await notificationSender.Send(ownerId, NotifyType.Destructive, "{0} вышел из команды {1}", user.Photo100, items); break; } }
private async Task JoinTeamNotify(long teamId, User user, Team team) { var ownerId = await context.Teams.GetOwnerId(teamId); await notificationSender.Send(ownerId, NotifyType.Destructive, "{0} принял приглашение в команду {1}", user.Photo100, NoticeItem.User(user), NoticeItem.Team(team)); }
public void InsertTwoPlaceholder() { var message = "Вас пригласили в команду {0} по рекомендации пользователя {1}"; var items = new List <NoticeItem> { NoticeItem.Team(27, "Super puper Team"), NoticeItem.User(666, "Milkov") }; message = PlaceholderBuilder.Build(message, items); message.Should().Be("Вас пригласили в команду #[Team27] по рекомендации пользователя #[User666]"); }
private async Task RejectedOrRemoveUserNotify(long userId, Team team, UserActionEnum userAction) { var requestUserId = HttpContext.User.Identity.Name; var teamItem = NoticeItem.Team(team); var user = await context.Users.FirstOrDefaultAsync(u => u.Id == userId); if (requestUserId != userId.ToString()) { switch (userAction) { case UserActionEnum.RejectedTeamRequest: await notificationSender.Send(userId, NotifyType.Destructive, "Команда {0} отклонила вашу заявку", team.Image.DataURL, teamItem); break; case UserActionEnum.QuitTeam: await notificationSender.Send(userId, NotifyType.Destructive, "Команда {0} исключила вас из списка участников", team.Image.DataURL, teamItem); break; } } else { var items = new List <NoticeItem> { NoticeItem.User(user), teamItem }; var ownerId = await context.Teams.GetOwnerId(team.Id); switch (userAction) { case UserActionEnum.RejectedTeamRequest: await notificationSender.Send(ownerId, NotifyType.Destructive, "{0} отказался от приглашения в команду {1}", user.Photo100, items); break; case UserActionEnum.QuitTeam: await notificationSender.Send(ownerId, NotifyType.Destructive, "{0} вышел из команды {1}", user.Photo100, items); break; } } }
private async Task JoinTeamNotify(long userId, Team team, User user, UserActionEnum wasAction) { var teamItem = NoticeItem.Team(team); var ownerId = await context.Teams.GetOwnerId(team.Id); switch (wasAction) { case UserActionEnum.ConsideringOffer: await notificationSender.Send(ownerId, NotifyType.Destructive, "{0} принял приглашение вступить в команду {1}", user.Photo100, NoticeItem.User(user), teamItem); break; case UserActionEnum.SentRequest: await notificationSender.Send(userId, NotifyType.Destructive, "Команда {0} добавила вас в список участников", team.Image.DataURL, teamItem); break; } }