/
dimamir
/
coolify
Обзор
Документация
Войти
/
dimamir
/
coolify
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
app/Livewire/Project/Database/ScheduledBackups.php
66 строк
2 KB
Lucas Michot
Always prefer ::class notation
28 окт 2024, 16:56
28 окт 2024, 16:56
c5403b0
Код
Авторство
О чём код?
<?php namespace App\Livewire\Project\Database; use App\Models\ScheduledDatabaseBackup; use Livewire\Component; class ScheduledBackups extends Component { public $database; public $parameters; public $type; public ?ScheduledDatabaseBackup $selectedBackup; public $selectedBackupId; public $s3s; protected $listeners = ['refreshScheduledBackups']; protected $queryString = ['selectedBackupId']; public function mount(): void { if ($this->selectedBackupId) { $this->setSelectedBackup($this->selectedBackupId, true); } $this->parameters = get_route_parameters(); if ($this->database->getMorphClass() === \App\Models\ServiceDatabase::class) { $this->type = 'service-database'; } else { $this->type = 'database'; } $this->s3s = currentTeam()->s3s; } public function setSelectedBackup($backupId, $force = false) { if ($this->selectedBackupId === $backupId && ! $force) { return; } $this->selectedBackupId = $backupId; $this->selectedBackup = $this->database->scheduledBackups->find($backupId); if (is_null($this->selectedBackup)) { $this->selectedBackupId = null; } } public function delete($scheduled_backup_id): void { $this->database->scheduledBackups->find($scheduled_backup_id)->delete(); $this->dispatch('success', 'Scheduled backup deleted.'); $this->refreshScheduledBackups(); } public function refreshScheduledBackups(?int $id = null): void { $this->database->refresh(); if ($id) { $this->setSelectedBackup($id); } } }