Skip to content
This repository was archived by the owner on Oct 15, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
78b1c27
feat(email): Allow bcc to users
pan93412 Dec 13, 2024
7d0f729
refactor(email): Make EmailService readonly
pan93412 Dec 13, 2024
efc9fc1
feat(email): Email template service
pan93412 Dec 13, 2024
a9c9ffd
feat(email): EmailDeliveryEvent to DTO
pan93412 Dec 13, 2024
218fa6c
feat(email): Add a SentEmailDto with sendAt
pan93412 Dec 13, 2024
330dc6c
refactor(email): Return a SentEmailDto from DeliveryEvent
pan93412 Dec 13, 2024
02aede4
refactor(email): Separate email preview to a Twig component
pan93412 Dec 13, 2024
c71316a
refactor(email): Merge SentEmailDto to EmailDto
pan93412 Dec 15, 2024
64e38e5
fix(email): Inject serverMail to EmailTemplateService
pan93412 Dec 15, 2024
f429faf
refactor(email): More advanced preview in admin
pan93412 Dec 15, 2024
899aef6
chore: Update dependencies
pan93412 Dec 15, 2024
c5aadec
chore: Tweak style
pan93412 Dec 15, 2024
7ea9460
refactor(statistics): Separate statistics to a service
pan93412 Dec 15, 2024
d324ac7
refactor(service): Make all service "final readonly"
pan93412 Dec 15, 2024
30575ed
fix(email): Send at most 30 bcc each time
pan93412 Dec 15, 2024
ffc82dc
feat(email): Implement "app:email:send-login-reminder" command
pan93412 Dec 15, 2024
e6f258c
fix(email): Indent in $textContent
pan93412 Dec 15, 2024
c0cda24
feat(email): Workaround with the rate limit
pan93412 Dec 16, 2024
d58146c
chore(email): Correct PHPDoc
pan93412 Dec 16, 2024
6ef805c
fix(email): Filter out users who have logged in within the last 7 days
pan93412 Dec 16, 2024
a14a94b
fix(email): 7 days -> 5 days
pan93412 Dec 16, 2024
05719ce
chore: Update dependencies
pan93412 Dec 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .idea/app-sf.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 0 additions & 3 deletions .idea/php.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

351 changes: 176 additions & 175 deletions composer.lock

Large diffs are not rendered by default.

9 changes: 8 additions & 1 deletion config/services.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

use App\Controller\Admin\EmailTemplateController;
use App\Service\EmailService;
use App\Service\EmailTemplateService;
use App\Service\PromptService;
use App\Service\SqlRunnerService;
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
Expand All @@ -17,9 +18,11 @@
->set('app.redis_uri', env('REDIS_URI'))
->set('app.openai_api_key', env('OPENAI_API_KEY'))
->set('app.server-mail', env('SERVER_EMAIL'))
->set('app.mail.bcc-chunk', 10)
->set('app.features.hint', true)
->set('app.features.editable-profile', true)
->set('app.features.comment', true);
->set('app.features.comment', true)
;

$services = $containerConfigurator->services();

Expand All @@ -44,6 +47,10 @@
->arg('$baseUrl', param('app.sqlrunner_url'));

$services->set(EmailService::class)
->arg('$serverMail', param('app.server-mail'))
->arg('$chunkLimit', param('app.mail.bcc-chunk'));

$services->set(EmailTemplateService::class)
->arg('$serverMail', param('app.server-mail'));

$services->set(EmailTemplateController::class)
Expand Down
12 changes: 6 additions & 6 deletions devenv.lock
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1733749988,
"lastModified": 1734126203,
"owner": "nixos",
"repo": "nixpkgs",
"rev": "bc27f0fde01ce4e1bfec1ab122d72b7380278e68",
"rev": "71a6392e367b08525ee710a93af2e80083b5b3e2",
"type": "github"
},
"original": {
Expand All @@ -68,10 +68,10 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1733730953,
"lastModified": 1734202038,
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7109b680d161993918b0a126f38bc39763e5a709",
"rev": "bcba2fbf6963bf6bed3a749f9f4cf5bff4adb96d",
"type": "github"
},
"original": {
Expand All @@ -91,10 +91,10 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1733665616,
"lastModified": 1734279981,
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
"rev": "d8c02f0ffef0ef39f6063731fc539d8c71eb463a",
"rev": "aa9f40c906904ebd83da78e7f328cd8aeaeae785",
"type": "github"
},
"original": {
Expand Down
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,18 @@
"@swc/core": "^1.10.1",
"mjml": "^4.15.3"
},
"packageManager": "pnpm@9.14.4+sha512.c8180b3fbe4e4bca02c94234717896b5529740a6cbadf19fa78254270403ea2f27d4e1d46a08a0f56c89b63dc8ebfd3ee53326da720273794e6200fcf0d184ab",
"packageManager": "pnpm@9.15.0+sha512.76e2379760a4328ec4415815bcd6628dee727af3779aaa4c914e3944156c4299921a89f976381ee107d41f12cfa4b66681ca9c718f0668fa0831ed4c6d8ba56c",
"devDependencies": {
"@codemirror/lang-sql": "^6.8.0",
"@codemirror/state": "^6.5.0",
"@eslint/js": "^9.16.0",
"@eslint/js": "^9.17.0",
"@hotwired/stimulus": "^3.2.2",
"@symfony/stimulus-bridge": "^3.2.2",
"@types/bootstrap": "^5.2.10",
"bootstrap": "^5.3.3",
"codemirror": "^6.0.1",
"dprint": "^0.47.6",
"eslint": "^9.16.0",
"eslint": "^9.17.0",
"globals": "^15.13.0",
"typescript": "^5.7.2",
"typescript-eslint": "^8.18.0"
Expand Down
82 changes: 41 additions & 41 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading