mirror of
https://github.com/coollabsio/coolify.git
synced 2026-10-28 09:34:36 +08:00
Add a /dashboard/canvas page that renders every team server with its resources and their running or queued deployments, backed by a new ServerCanvasController::dashboard endpoint and a per-server usage endpoint for zone headers. The dashboard remembers the list/canvas choice and each section (projects, servers) its own table/grid view. - Show Deploying/Queued pills on canvas cards and a foldable recent deployments panel; add shared CanvasControls component - Allow backup downloads from the server host via the S3 download storage (PrepareFileDownloadJob accepts a null container) - Extract backup toggle/run actions into ManagesDatabaseBackup and surface them in backup execution headers; merge S3 and retention sections into the general backup settings - Move deployments indicator to the top bar and add a main nav resource menu with submenus; simplify breadcrumbs and settings layouts - Add shared variables overview canvas and scheduled task modals - Add feature tests for dashboard canvas, view modes, navbar submenus, backup S3 downloads and scheduled task modals
41 lines
1.9 KiB
PHP
41 lines
1.9 KiB
PHP
<div>
|
|
<x-slot:title>
|
|
{{ data_get_str($database, 'name')->limit(10) }} > Backup | Coolify
|
|
</x-slot>
|
|
|
|
<livewire:project.database.heading :database="$database" />
|
|
|
|
@can('manageBackups', $database)
|
|
@teleport('#resource-action-hud-slot')
|
|
<div class="order-first mr-1 hidden items-center gap-1 xl:flex">
|
|
@php($databaseRunning = str($database->status)->startsWith('running'))
|
|
@if ($backup->enabled)
|
|
<x-forms.button type="button" wire:click="toggleEnabled">Disable backup</x-forms.button>
|
|
@else
|
|
<x-forms.button type="button" wire:click="toggleEnabled" isHighlighted>Enable backup</x-forms.button>
|
|
@endif
|
|
<x-forms.button type="button" wire:click="backupNow" :disabled="! $databaseRunning"
|
|
:tooltip="! $databaseRunning ? 'The database must be running to start a backup.' : null">
|
|
Back up now
|
|
</x-forms.button>
|
|
</div>
|
|
@endteleport
|
|
@endcan
|
|
|
|
<section class="application-settings-workspace mt-4 w-full max-w-none lg:mt-0">
|
|
<div class="grid min-w-0 gap-8 xl:grid-cols-[210px_minmax(0,1fr)] xl:gap-8">
|
|
<x-backup-sidebar context="database" :parameters="$parameters" :section="$section" />
|
|
|
|
<div class="min-w-0">
|
|
@if ($section === 'executions')
|
|
<livewire:project.database.backup-executions :backup="$backup" />
|
|
@else
|
|
<livewire:project.database.backup-edit :backup="$backup" :available-s3-storages="$s3s"
|
|
:status="data_get($database, 'status')" :section="$section"
|
|
:actions-in-header="true" wire:key="database-backup-{{ $backup->uuid }}-{{ $section }}" />
|
|
@endif
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|