ctrlpanel/app/Settings/MailSettings.php

53 lines
1.2 KiB
PHP
Raw Normal View History

2023-02-02 15:45:17 +00:00
<?php
2023-02-06 20:16:54 +00:00
namespace App\Settings;
2023-02-02 15:45:17 +00:00
use Spatie\LaravelSettings\Settings;
class MailSettings extends Settings
{
2023-02-07 15:35:04 +00:00
public ?string $mail_host;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?int $mail_port;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?string $mail_username;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?string $mail_password;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?string $mail_encryption;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?string $mail_from_address;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?string $mail_from_name;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?string $mail_mailer;
2023-02-02 15:45:17 +00:00
2023-02-07 15:35:04 +00:00
public ?bool $mail_enabled;
2023-02-02 15:45:17 +00:00
public static function group(): string
{
return 'mail';
}
public static function encrypted(): array
{
return [
'mail_password'
];
}
2023-02-07 15:35:04 +00:00
public function setConfig()
{
try {
config()->set('mail.mailers.smtp.host', $this->mail_host);
config()->set('mail.mailers.smtp.port', $this->mail_port);
config()->set('mail.mailers.smtp.encryption', $this->mail_encryption);
config()->set('mail.mailers.smtp.username', $this->mail_username);
config()->set('mail.mailers.smtp.password', $this->mail_password);
config()->set('mail.from.address', $this->mail_from_address);
config()->set('mail.from.name', $this->mail_from_name);
} catch (\Exception) {
}
}
2023-02-02 15:45:17 +00:00
}