Merge pull request #10261 from firefly-iii/update-packages

Update packages
This commit is contained in:
James Cole
2025-05-05 07:48:50 +02:00
committed by GitHub
4 changed files with 456 additions and 803 deletions

View File

@@ -51,11 +51,14 @@ class ReturnsAvailableChannels
{ {
$channels = ['mail']; $channels = ['mail'];
if(true === config('notifications.channels.slack.enabled', false)) {
$slackUrl = app('fireflyconfig')->getEncrypted('slack_webhook_url', '')->data; $slackUrl = app('fireflyconfig')->getEncrypted('slack_webhook_url', '')->data;
if (UrlValidator::isValidWebhookURL($slackUrl)) { if (UrlValidator::isValidWebhookURL($slackUrl)) {
$channels[] = 'slack'; $channels[] = 'slack';
} }
}
if(true === config('notifications.channels.ntfy.enabled', false)) {
// validate presence of of Ntfy settings. // validate presence of of Ntfy settings.
if ('' !== (string) app('fireflyconfig')->getEncrypted('ntfy_topic', '')->data) { if ('' !== (string) app('fireflyconfig')->getEncrypted('ntfy_topic', '')->data) {
Log::debug('Enabled ntfy.'); Log::debug('Enabled ntfy.');
@@ -64,8 +67,10 @@ class ReturnsAvailableChannels
if ('' === (string) app('fireflyconfig')->getEncrypted('ntfy_topic', '')->data) { if ('' === (string) app('fireflyconfig')->getEncrypted('ntfy_topic', '')->data) {
Log::warning('No topic name for Ntfy, channel is disabled.'); Log::warning('No topic name for Ntfy, channel is disabled.');
} }
}
// pushover // pushover
if(true === config('notifications.channels.pushover.enabled', false)) {
$pushoverAppToken = (string) app('fireflyconfig')->getEncrypted('pushover_app_token', '')->data; $pushoverAppToken = (string) app('fireflyconfig')->getEncrypted('pushover_app_token', '')->data;
$pushoverUserToken = (string) app('fireflyconfig')->getEncrypted('pushover_user_token', '')->data; $pushoverUserToken = (string) app('fireflyconfig')->getEncrypted('pushover_user_token', '')->data;
if ('' === $pushoverAppToken || '' === $pushoverUserToken) { if ('' === $pushoverAppToken || '' === $pushoverUserToken) {
@@ -75,6 +80,7 @@ class ReturnsAvailableChannels
Log::debug('Enabled pushover.'); Log::debug('Enabled pushover.');
$channels[] = PushoverChannel::class; $channels[] = PushoverChannel::class;
} }
}
Log::debug(sprintf('Final channel set in ReturnsAvailableChannels: %s ', implode(', ', $channels))); Log::debug(sprintf('Final channel set in ReturnsAvailableChannels: %s ', implode(', ', $channels)));
@@ -85,12 +91,16 @@ class ReturnsAvailableChannels
{ {
Log::debug(sprintf('Checking channels for user #%d', $user->id)); Log::debug(sprintf('Checking channels for user #%d', $user->id));
$channels = ['mail']; $channels = ['mail'];
if(true === config('notifications.channels.slack.enabled', false)) {
$slackUrl = (string) app('preferences')->getEncryptedForUser($user, 'slack_webhook_url', '')->data; $slackUrl = (string) app('preferences')->getEncryptedForUser($user, 'slack_webhook_url', '')->data;
if (UrlValidator::isValidWebhookURL($slackUrl)) { if (UrlValidator::isValidWebhookURL($slackUrl)) {
$channels[] = 'slack'; $channels[] = 'slack';
} }
}
// validate presence of of Ntfy settings. // validate presence of of Ntfy settings.
if(true === config('notifications.channels.nfy.enabled', false)) {
$ntfyTopic = (string) app('preferences')->getEncryptedForUser($user, 'ntfy_topic', '')->data; $ntfyTopic = (string) app('preferences')->getEncryptedForUser($user, 'ntfy_topic', '')->data;
if ('' !== $ntfyTopic) { if ('' !== $ntfyTopic) {
Log::debug(sprintf('Enabled ntfy, "%s"', $ntfyTopic)); Log::debug(sprintf('Enabled ntfy, "%s"', $ntfyTopic));
@@ -99,8 +109,10 @@ class ReturnsAvailableChannels
if ('' === (string) app('preferences')->getEncryptedForUser($user, 'ntfy_topic', '')->data) { if ('' === (string) app('preferences')->getEncryptedForUser($user, 'ntfy_topic', '')->data) {
Log::warning('No topic name for Ntfy, channel is disabled.'); Log::warning('No topic name for Ntfy, channel is disabled.');
} }
}
// pushover // pushover
if(true === config('notifications.channels.slack.enabled', false)) {
$pushoverAppToken = (string) app('preferences')->getEncryptedForUser($user, 'pushover_app_token', '')->data; $pushoverAppToken = (string) app('preferences')->getEncryptedForUser($user, 'pushover_app_token', '')->data;
$pushoverUserToken = (string) app('preferences')->getEncryptedForUser($user, 'pushover_user_token', '')->data; $pushoverUserToken = (string) app('preferences')->getEncryptedForUser($user, 'pushover_user_token', '')->data;
if ('' === $pushoverAppToken || '' === $pushoverUserToken) { if ('' === $pushoverAppToken || '' === $pushoverUserToken) {
@@ -110,6 +122,7 @@ class ReturnsAvailableChannels
Log::debug('Enabled pushover.'); Log::debug('Enabled pushover.');
$channels[] = PushoverChannel::class; $channels[] = PushoverChannel::class;
} }
}
Log::debug(sprintf('Final channel set in ReturnsAvailableChannels (user): %s ', implode(', ', $channels))); Log::debug(sprintf('Final channel set in ReturnsAvailableChannels (user): %s ', implode(', ', $channels)));

View File

@@ -88,9 +88,8 @@
"jc5/google2fa-laravel": "^2.0", "jc5/google2fa-laravel": "^2.0",
"jc5/recovery": "^2", "jc5/recovery": "^2",
"laravel-notification-channels/pushover": "^4.0", "laravel-notification-channels/pushover": "^4.0",
"laravel/framework": "^11", "laravel/framework": "^12",
"laravel/passport": "^12", "laravel/passport": "^12",
"laravel/sanctum": "^4",
"laravel/slack-notification-channel": "^3.3", "laravel/slack-notification-channel": "^3.3",
"laravel/ui": "^4.2", "laravel/ui": "^4.2",
"league/commonmark": "^2", "league/commonmark": "^2",
@@ -99,7 +98,7 @@
"mailersend/laravel-driver": "^2.7", "mailersend/laravel-driver": "^2.7",
"nunomaduro/collision": "^8", "nunomaduro/collision": "^8",
"pragmarx/google2fa": "^8.0", "pragmarx/google2fa": "^8.0",
"predis/predis": "^2.2", "predis/predis": "^3",
"psr/log": "<4", "psr/log": "<4",
"ramsey/uuid": "^4.7", "ramsey/uuid": "^4.7",
"rcrowe/twigbridge": "^0.14", "rcrowe/twigbridge": "^0.14",
@@ -108,8 +107,7 @@
"spatie/period": "^2.4", "spatie/period": "^2.4",
"symfony/expression-language": "^7.0", "symfony/expression-language": "^7.0",
"symfony/http-client": "^7.1", "symfony/http-client": "^7.1",
"symfony/mailgun-mailer": "^7.1", "symfony/mailgun-mailer": "^7.1"
"wijourdil/ntfy-notification-channel": "^3.0"
}, },
"require-dev": { "require-dev": {
"barryvdh/laravel-debugbar": "^3.9", "barryvdh/laravel-debugbar": "^3.9",
@@ -123,7 +121,7 @@
"phpstan/phpstan": "^2", "phpstan/phpstan": "^2",
"phpstan/phpstan-deprecation-rules": "^2", "phpstan/phpstan-deprecation-rules": "^2",
"phpstan/phpstan-strict-rules": "^2", "phpstan/phpstan-strict-rules": "^2",
"phpunit/phpunit": "^11", "phpunit/phpunit": "^12",
"rector/rector": "^2.0", "rector/rector": "^2.0",
"thecodingmachine/phpstan-safe-rule": "^1.4" "thecodingmachine/phpstan-safe-rule": "^1.4"
}, },

1162
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -26,7 +26,7 @@ return [
'channels' => [ 'channels' => [
'email' => ['enabled' => true, 'ui_configurable' => 0], 'email' => ['enabled' => true, 'ui_configurable' => 0],
'slack' => ['enabled' => true, 'ui_configurable' => 1], 'slack' => ['enabled' => true, 'ui_configurable' => 1],
'ntfy' => ['enabled' => true, 'ui_configurable' => 1], 'ntfy' => ['enabled' => false, 'ui_configurable' => 1],
'pushover' => ['enabled' => true, 'ui_configurable' => 1], 'pushover' => ['enabled' => true, 'ui_configurable' => 1],
// 'gotify' => ['enabled' => false, 'ui_configurable' => 0], // 'gotify' => ['enabled' => false, 'ui_configurable' => 0],
// 'pushbullet' => ['enabled' => false, 'ui_configurable' => 0], // 'pushbullet' => ['enabled' => false, 'ui_configurable' => 0],