diff --git a/bin/evening_detective_server b/bin/evening_detective_server index e38cbb3..4df24f5 100755 Binary files a/bin/evening_detective_server and b/bin/evening_detective_server differ diff --git a/internal/services/team_service/registration_test.go b/internal/services/team_service/registration_test.go index add1f2f..302dd84 100644 --- a/internal/services/team_service/registration_test.go +++ b/internal/services/team_service/registration_test.go @@ -45,11 +45,12 @@ func TestRegistrationEmail(t *testing.T) { t.Errorf("wrong recipient: %q", message.To) } for _, value := range []string{message.Body, message.HTML} { - if !strings.Contains(value, "Команда") || !strings.Contains(value, "abcdefgh") { - t.Errorf("registration email misses team data: %q", value) + if !strings.Contains(value, "Команда") || strings.Contains(value, "Пароль команды") { + t.Errorf("registration email has incorrect team data: %q", value) } } - if !strings.Contains(message.Body, "https://app.test/team-story/7?password=abcdefgh") { - t.Error("registration email misses team link") + if !strings.Contains(message.Body, "https://app.test/team-story/7?password=abcdefgh") || + !strings.Contains(message.HTML, "team-story/7?password=abcdefgh") { + t.Error("registration email misses the password link") } } diff --git a/internal/services/team_service/service.go b/internal/services/team_service/service.go index fae39cb..471a633 100644 --- a/internal/services/team_service/service.go +++ b/internal/services/team_service/service.go @@ -113,8 +113,8 @@ func (s *TeamService) RegisterTeam(ctx context.Context, gameID int, deliveryID s func registrationEmail(team *repos.Team, gameName, baseURL string) email_sender.Message { link := strings.TrimRight(baseURL, "/") + "/team-story/" + fmt.Sprint(team.ID) + "?password=" + team.Password - body := fmt.Sprintf("Регистрация команды «%s» в игре «%s» прошла успешно.\n\nУчастников: %d\nПароль команды: %s\n\nСсылка для входа в игру: %s\n\nСохраните это письмо и не пересылайте пароль посторонним.", team.Name, gameName, team.ParticipantsCount, team.Password, link) - content := fmt.Sprintf("
Регистрация команды %s в игре %s прошла успешно.
Участников: %d
Пароль команды: %s
Сохраните это письмо и не пересылайте пароль посторонним.
", html.EscapeString(team.Name), html.EscapeString(gameName), team.ParticipantsCount, html.EscapeString(team.Password), email_sender.ButtonHTML(link, "Войти в игру")) + body := fmt.Sprintf("Регистрация команды «%s» в игре «%s» прошла успешно.\n\nУчастников: %d\n\nСсылка для входа в игру: %s", team.Name, gameName, team.ParticipantsCount, link) + content := fmt.Sprintf("Регистрация команды %s в игре %s прошла успешно.
Участников: %d
%s", html.EscapeString(team.Name), html.EscapeString(gameName), team.ParticipantsCount, email_sender.ButtonHTML(link, "Войти в игру")) markup := email_sender.WrapHTML(content, strings.TrimRight(baseURL, "/")) return email_sender.Message{To: team.CaptainEmail, Subject: "Регистрация команды в «Вечернем детективе»", Body: body, HTML: markup} }