Clean up and fix notifications.

This commit is contained in:
James Cole
2024-12-14 07:52:02 +01:00
parent 5f1502eea7
commit 5520992861
20 changed files with 195 additions and 25 deletions

View File

@@ -25,11 +25,14 @@ declare(strict_types=1);
namespace FireflyIII\Notifications\Security;
use FireflyIII\Notifications\ReturnsAvailableChannels;
use FireflyIII\Notifications\ReturnsSettings;
use FireflyIII\User;
use Illuminate\Bus\Queueable;
use Illuminate\Notifications\Messages\MailMessage;
use Illuminate\Notifications\Messages\SlackMessage;
use Illuminate\Notifications\Notification;
use NotificationChannels\Pushover\PushoverMessage;
use Ntfy\Message;
class MFABackupNoLeftNotification extends Notification
{
@@ -69,7 +72,27 @@ class MFABackupNoLeftNotification extends Notification
{
$message = (string) trans('email.mfa_no_backups_left_slack', ['email' => $this->user->email]);
return (new SlackMessage())->content($message);
return new SlackMessage()->content($message);
}
public function toNtfy(User $notifiable): Message
{
$settings = ReturnsSettings::getSettings('ntfy', 'user', $notifiable);
$message = new Message();
$message->topic($settings['ntfy_topic']);
$message->title((string) trans('email.mfa_no_backups_left_subject'));
$message->body((string) trans('email.mfa_no_backups_left_slack', ['email' => $this->user->email]));
return $message;
}
/**
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function toPushover(User $notifiable): PushoverMessage
{
return PushoverMessage::create((string) trans('email.mfa_few_backups_left_slack', ['email' => $this->user->email]))
->title((string) trans('email.mfa_no_backups_left_slack'));
}