fix notifications

This commit is contained in:
Andras Bacsai
2024-11-05 11:33:33 +01:00
parent 5ce6c3ded1
commit 9995663f01
6 changed files with 50 additions and 22 deletions

View File

@@ -41,7 +41,7 @@ class Discord extends Component
$this->team = auth()->user()->currentTeam();
$this->syncData();
} catch (\Throwable $e) {
handleError($e, $this);
return handleError($e, $this);
}
}
@@ -57,11 +57,8 @@ class Discord extends Component
$this->team->discord_notifications_database_backups = $this->discordNotificationsDatabaseBackups;
$this->team->discord_notifications_scheduled_tasks = $this->discordNotificationsScheduledTasks;
$this->team->discord_notifications_server_disk_usage = $this->discordNotificationsServerDiskUsage;
try {
$this->saveModel();
} catch (\Throwable $e) {
return handleError($e, $this);
}
$this->team->save();
refreshSession();
} else {
$this->discordEnabled = $this->team->discord_enabled;
$this->discordWebhookUrl = $this->team->discord_webhook_url;
@@ -74,6 +71,22 @@ class Discord extends Component
}
}
public function instantSaveDiscordEnabled()
{
try {
$this->validate([
'discordWebhookUrl' => 'required',
], [
'discordWebhookUrl.required' => 'Discord Webhook URL is required.',
]);
$this->saveModel();
} catch (\Throwable $e) {
$this->discordEnabled = false;
return handleError($e, $this);
}
}
public function instantSave()
{
try {
@@ -96,7 +109,7 @@ class Discord extends Component
public function saveModel()
{
$this->team->save();
$this->syncData(true);
refreshSession();
$this->dispatch('success', 'Settings saved.');
}

View File

@@ -108,6 +108,7 @@ class Email extends Component
$this->team->resend_enabled = $this->resendEnabled;
$this->team->resend_api_key = $this->resendApiKey;
$this->team->save();
refreshSession();
} else {
$this->smtpEnabled = $this->team->smtp_enabled;
$this->smtpFromAddress = $this->team->smtp_from_address;
@@ -170,8 +171,8 @@ class Email extends Component
'smtpHost' => 'required',
'smtpPort' => 'required|numeric',
], [
'smtpHost.required' => 'SMTP Host is required',
'smtpPort.required' => 'SMTP Port is required',
'smtpHost.required' => 'SMTP Host is required.',
'smtpPort.required' => 'SMTP Port is required.',
]);
$this->resendEnabled = false;
$this->saveModel();
@@ -186,9 +187,8 @@ class Email extends Component
{
try {
$this->validate([
'resendApiKey' => 'required',
], [
'resendApiKey.required' => 'Resend API Key is required',
'resendApiKey.required' => 'Resend API Key is required.',
]);
$this->smtpEnabled = false;
$this->saveModel();

View File

@@ -81,11 +81,8 @@ class Telegram extends Component
$this->team->telegram_notifications_database_backups_message_thread_id = $this->telegramNotificationsDatabaseBackupsMessageThreadId;
$this->team->telegram_notifications_scheduled_tasks_thread_id = $this->telegramNotificationsScheduledTasksThreadId;
$this->team->telegram_notifications_server_disk_usage = $this->telegramNotificationsServerDiskUsage;
try {
$this->saveModel();
} catch (\Throwable $e) {
return handleError($e, $this);
}
$this->team->save();
refreshSession();
} else {
$this->telegramEnabled = $this->team->telegram_enabled;
$this->telegramToken = $this->team->telegram_token;
@@ -125,9 +122,27 @@ class Telegram extends Component
}
}
public function instantSaveTelegramEnabled()
{
try {
$this->validate([
'telegramToken' => 'required',
'telegramChatId' => 'required',
], [
'telegramToken.required' => 'Telegram Token is required.',
'telegramChatId.required' => 'Telegram Chat ID is required.',
]);
$this->saveModel();
} catch (\Throwable $e) {
$this->telegramEnabled = false;
return handleError($e, $this);
}
}
public function saveModel()
{
$this->team->save();
$this->syncData(true);
refreshSession();
$this->dispatch('success', 'Settings saved.');
}