mirror of
				https://github.com/firefly-iii/firefly-iii.git
				synced 2025-10-31 02:36:28 +00:00 
			
		
		
		
	Also support Discord.
This commit is contained in:
		| @@ -24,6 +24,7 @@ declare(strict_types=1); | ||||
| 
 | ||||
| namespace FireflyIII\Notifications\Admin; | ||||
| 
 | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\MailMessage; | ||||
| @@ -99,9 +100,9 @@ class TestNotification extends Notification | ||||
|     public function via($notifiable) | ||||
|     { | ||||
|         /** @var User|null $user */ | ||||
|         $user = auth()->user(); | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             return ['mail', 'slack']; | ||||
|         } | ||||
|         return ['mail']; | ||||
|   | ||||
| @@ -25,6 +25,7 @@ declare(strict_types=1); | ||||
| namespace FireflyIII\Notifications\Admin; | ||||
| 
 | ||||
| use FireflyIII\Models\InvitedUser; | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\MailMessage; | ||||
| @@ -102,9 +103,9 @@ class UserInvitation extends Notification | ||||
|     public function via($notifiable) | ||||
|     { | ||||
|         /** @var User|null $user */ | ||||
|         $user = auth()->user(); | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             return ['mail', 'slack']; | ||||
|         } | ||||
|         return ['mail']; | ||||
|   | ||||
| @@ -24,6 +24,7 @@ declare(strict_types=1); | ||||
| 
 | ||||
| namespace FireflyIII\Notifications\Admin; | ||||
| 
 | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\MailMessage; | ||||
| @@ -99,9 +100,9 @@ class UserRegistration extends Notification | ||||
|     public function via($notifiable) | ||||
|     { | ||||
|         /** @var User|null $user */ | ||||
|         $user = auth()->user(); | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             return ['mail', 'slack']; | ||||
|         } | ||||
|         return ['mail']; | ||||
|   | ||||
| @@ -24,6 +24,7 @@ declare(strict_types=1); | ||||
| 
 | ||||
| namespace FireflyIII\Notifications\Admin; | ||||
| 
 | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\MailMessage; | ||||
| @@ -105,7 +106,7 @@ class VersionCheckResult extends Notification | ||||
|         /** @var User|null $user */ | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             return ['mail', 'slack']; | ||||
|         } | ||||
|         return ['mail']; | ||||
|   | ||||
| @@ -25,6 +25,7 @@ declare(strict_types=1); | ||||
| namespace FireflyIII\Notifications\User; | ||||
| 
 | ||||
| use FireflyIII\Models\Bill; | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\MailMessage; | ||||
| @@ -38,8 +39,8 @@ class BillReminder extends Notification | ||||
| { | ||||
|     use Queueable; | ||||
| 
 | ||||
|     private Bill $bill; | ||||
|     private int $diff; | ||||
|     private Bill   $bill; | ||||
|     private int    $diff; | ||||
|     private string $field; | ||||
| 
 | ||||
|     /** | ||||
| @@ -49,9 +50,9 @@ class BillReminder extends Notification | ||||
|      */ | ||||
|     public function __construct(Bill $bill, string $field, int $diff) | ||||
|     { | ||||
|         $this->bill = $bill; | ||||
|         $this->bill  = $bill; | ||||
|         $this->field = $field; | ||||
|         $this->diff = $diff; | ||||
|         $this->diff  = $diff; | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
| @@ -101,7 +102,7 @@ class BillReminder extends Notification | ||||
|             $message = (string)trans(sprintf('email.bill_warning_subject_now_%s', $this->field), ['diff' => $this->diff, 'name' => $this->bill->name]); | ||||
|         } | ||||
|         $bill = $this->bill; | ||||
|         $url = route('bills.show', [$bill->id]); | ||||
|         $url  = route('bills.show', [$bill->id]); | ||||
|         return (new SlackMessage()) | ||||
|             ->warning() | ||||
|             ->attachment(function ($attachment) use ($bill, $url) { | ||||
| @@ -120,9 +121,9 @@ class BillReminder extends Notification | ||||
|     public function via($notifiable) | ||||
|     { | ||||
|         /** @var User|null $user */ | ||||
|         $user = auth()->user(); | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             return ['mail', 'slack']; | ||||
|         } | ||||
|         return ['mail']; | ||||
|   | ||||
| @@ -24,6 +24,7 @@ declare(strict_types=1); | ||||
| 
 | ||||
| namespace FireflyIII\Notifications\User; | ||||
| 
 | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\MailMessage; | ||||
| @@ -42,9 +43,7 @@ class NewAccessToken extends Notification | ||||
|      * | ||||
|      * @return void | ||||
|      */ | ||||
|     public function __construct() | ||||
|     { | ||||
|     } | ||||
|     public function __construct() {} | ||||
| 
 | ||||
|     /** | ||||
|      * Get the array representation of the notification. | ||||
| @@ -96,9 +95,9 @@ class NewAccessToken extends Notification | ||||
|     public function via($notifiable) | ||||
|     { | ||||
|         /** @var User|null $user */ | ||||
|         $user = auth()->user(); | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             return ['mail', 'slack']; | ||||
|         } | ||||
|         return ['mail']; | ||||
|   | ||||
| @@ -24,6 +24,7 @@ declare(strict_types=1); | ||||
| 
 | ||||
| namespace FireflyIII\Notifications\User; | ||||
| 
 | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\SlackMessage; | ||||
| @@ -106,7 +107,7 @@ class RuleActionFailed extends Notification | ||||
|         /** @var User|null $user */ | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             app('log')->debug('Will send ruleActionFailed through Slack!'); | ||||
|             return ['slack']; | ||||
|         } | ||||
|   | ||||
| @@ -25,6 +25,7 @@ declare(strict_types=1); | ||||
| namespace FireflyIII\Notifications\User; | ||||
| 
 | ||||
| use FireflyIII\Exceptions\FireflyException; | ||||
| use FireflyIII\Support\Notifications\UrlValidator; | ||||
| use FireflyIII\User; | ||||
| use Illuminate\Bus\Queueable; | ||||
| use Illuminate\Notifications\Messages\MailMessage; | ||||
| @@ -124,9 +125,9 @@ class UserLogin extends Notification | ||||
|     public function via($notifiable) | ||||
|     { | ||||
|         /** @var User|null $user */ | ||||
|         $user = auth()->user(); | ||||
|         $user     = auth()->user(); | ||||
|         $slackUrl = null === $user ? '' : (string)app('preferences')->getForUser(auth()->user(), 'slack_webhook_url', '')->data; | ||||
|         if (str_starts_with($slackUrl, 'https://hooks.slack.com/services/')) { | ||||
|         if (UrlValidator::isValidWebhookURL($slackUrl)) { | ||||
|             return ['mail', 'slack']; | ||||
|         } | ||||
|         return ['mail']; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user