From 82b0aff105730ce5b8bd410756c72c97c582e14a Mon Sep 17 00:00:00 2001 From: Boy132 Date: Fri, 21 Mar 2025 08:42:42 +0100 Subject: [PATCH] Fix SMTP scheme/ encryption (#1120) --- app/Filament/Admin/Pages/Settings.php | 20 +++++++------------- config/mail.php | 2 +- lang/en/admin/setting.php | 5 +---- 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/app/Filament/Admin/Pages/Settings.php b/app/Filament/Admin/Pages/Settings.php index a96bc883f..4529996de 100644 --- a/app/Filament/Admin/Pages/Settings.php +++ b/app/Filament/Admin/Pages/Settings.php @@ -308,7 +308,7 @@ class Settings extends Page implements HasForms 'mail.mailers.smtp.port' => config('mail.mailers.smtp.port'), 'mail.mailers.smtp.username' => config('mail.mailers.smtp.username'), 'mail.mailers.smtp.password' => config('mail.mailers.smtp.password'), - 'mail.mailers.smtp.encryption' => config('mail.mailers.smtp.encryption'), + 'mail.mailers.smtp.scheme' => config('mail.mailers.smtp.scheme'), 'mail.from.address' => config('mail.from.address'), 'mail.from.name' => config('mail.from.name'), 'services.mailgun.domain' => config('services.mailgun.domain'), @@ -324,7 +324,7 @@ class Settings extends Page implements HasForms 'mail.mailers.smtp.port' => $get('MAIL_PORT'), 'mail.mailers.smtp.username' => $get('MAIL_USERNAME'), 'mail.mailers.smtp.password' => $get('MAIL_PASSWORD'), - 'mail.mailers.smtp.encryption' => $get('MAIL_SCHEME'), + 'mail.mailers.smtp.scheme' => $get('MAIL_SCHEME'), 'mail.from.address' => $get('MAIL_FROM_ADDRESS'), 'mail.from.name' => $get('MAIL_FROM_NAME'), 'services.mailgun.domain' => $get('MAILGUN_DOMAIN'), @@ -388,22 +388,16 @@ class Settings extends Page implements HasForms ->revealable() ->default(env('MAIL_PASSWORD')), ToggleButtons::make('MAIL_SCHEME') - ->label(trans('admin/setting.mail.smtp.encryption')) + ->label(trans('admin/setting.mail.smtp.scheme')) ->inline() ->options([ - 'tls' => trans('admin/setting.mail.smtp.tls'), - 'ssl' => trans('admin/setting.mail.smtp.ssl'), - '' => trans('admin/setting.mail.smtp.none'), + 'smtp' => 'SMTP', + 'smtps' => 'SMTPS', ]) - ->default(env('MAIL_SCHEME', config('mail.mailers.smtp.encryption', 'tls'))) + ->default(env('MAIL_SCHEME', config('mail.mailers.smtp.scheme'))) ->live() ->afterStateUpdated(function ($state, Set $set) { - $port = match ($state) { - 'tls' => 587, - 'ssl' => 465, - default => 25, - }; - $set('MAIL_PORT', $port); + $set('MAIL_PORT', $state === 'smtps' ? 587 : 2525); }), ]), Section::make(trans('admin/setting.mail.mailgun.mailgun_title')) diff --git a/config/mail.php b/config/mail.php index 73c68e7cc..c79f13b0d 100644 --- a/config/mail.php +++ b/config/mail.php @@ -42,7 +42,7 @@ return [ 'smtp' => [ 'transport' => 'smtp', - 'scheme' => env('MAIL_SCHEME', env('MAIL_ENCRYPTION')), + 'scheme' => env('MAIL_SCHEME', env('MAIL_ENCRYPTION') === 'ssl' || env('MAIL_ENCRYPTION') === 'tls' ? 'smtps' : 'smtp'), 'url' => env('MAIL_URL'), 'host' => env('MAIL_HOST', '127.0.0.1'), 'port' => env('MAIL_PORT', 2525), diff --git a/lang/en/admin/setting.php b/lang/en/admin/setting.php index 34427f3f1..729c9e265 100644 --- a/lang/en/admin/setting.php +++ b/lang/en/admin/setting.php @@ -59,10 +59,7 @@ return [ 'port' => 'Port', 'username' => 'Username', 'password' => 'Password', - 'encryption' => 'Encryption', - 'ssl' => 'SSL', - 'tls' => 'TLS', - 'none' => 'None', + 'scheme' => 'Scheme', ], 'mailgun' => [ 'mailgun_title' => 'Mailgun Configuration',