lasthourcloud/app/Livewire/Project/Database/Configuration.php

37 lines
1.2 KiB
PHP
Raw Normal View History

2024-01-07 15:23:41 +00:00
<?php
namespace App\Livewire\Project\Database;
use Livewire\Component;
class Configuration extends Component
{
public $database;
2024-06-10 20:43:34 +00:00
public function mount()
{
2024-01-07 15:23:41 +00:00
$project = currentTeam()->load(['projects'])->projects->where('uuid', request()->route('project_uuid'))->first();
2024-06-10 20:43:34 +00:00
if (! $project) {
2024-01-07 15:23:41 +00:00
return redirect()->route('dashboard');
}
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first()->load(['applications']);
2024-06-10 20:43:34 +00:00
if (! $environment) {
2024-01-07 15:23:41 +00:00
return redirect()->route('dashboard');
}
$database = $environment->databases()->where('uuid', request()->route('database_uuid'))->first();
2024-06-10 20:43:34 +00:00
if (! $database) {
2024-01-07 15:23:41 +00:00
return redirect()->route('dashboard');
}
$this->database = $database;
if (str($this->database->status)->startsWith('running') && is_null($this->database->config_hash)) {
$this->database->isConfigurationChanged(true);
$this->dispatch('configurationChanged');
}
2024-01-07 15:23:41 +00:00
}
2024-06-10 20:43:34 +00:00
2024-01-07 15:23:41 +00:00
public function render()
{
return view('livewire.project.database.configuration');
}
}