- Change listStates method to accept nullable integer for limit parameter. - Modify TechnitiumDns class to return structured error messages on failure. - Enhance VNC and xterm popup routes with user authorization checks. - Update backups view to improve loading states and add unique keys for dynamic elements. - Refactor cloud-init view to ensure proper data binding and improve user experience. - Add wire:key attributes to various elements in views for better Livewire performance. - Improve error handling and user feedback in the firewall view. - Update server overview and statistics views to handle potential null values gracefully. - Add new migration files to extend database schema with user-set icons and notes for Proxmox nodes.
41 lines
2.1 KiB
PHP
41 lines
2.1 KiB
PHP
<div class="" wire:poll.10s="pollEligibility">
|
|
<x-button.primary
|
|
wire:click="$set('visible', true)"
|
|
:disabled="!$this->canCreateBackup"
|
|
class="disabled:cursor-not-allowed">
|
|
<x-ri-add-circle-fill class="size-4" />
|
|
Create Backup
|
|
</x-button.primary>
|
|
@if($visible)
|
|
<x-modal id="backup" title="Backup Server" open>
|
|
<div class="flex flex-col gap-4">
|
|
<x-form.input label="Backup Name" wire:model="name" placeholder="Enter backup name" name="name" required />
|
|
|
|
<x-form.select label="Backup Type" wire:model="type" placeholder="Select backup type" name="type">
|
|
<option value="snapshot">Snapshot (Takes a snapshot of the current state of the VM)</option>
|
|
<option value="suspend">Suspend (Suspends the VM and takes a backup of the suspended state)</option>
|
|
<option value="stop">Stop (Stops the VM and takes a backup of the stopped state)</option>
|
|
</x-form.select>
|
|
|
|
<x-form.select label="Compression" wire:model="compression" placeholder="Select compression type" name="compression">
|
|
<option value="zstd">ZSTD</option>
|
|
<option value="gzip">Gzip</option>
|
|
<option value="lzo">LZO</option>
|
|
<option value="none">None</option>
|
|
</x-form.select>
|
|
</div>
|
|
|
|
<div class="flex flex-row gap-4 mt-4">
|
|
<x-button.secondary wire:click="$set('visible', false)">Cancel</x-button.secondary>
|
|
<x-button.primary wire:click="backup" wire:loading.attr="disabled" wire:loading.class="opacity-50" wire:target="backup"
|
|
:disabled="!$this->canCreateBackup"
|
|
class="disabled:cursor-not-allowed">
|
|
<x-loading target="backup" />
|
|
<div wire:loading.remove wire:target="backup">
|
|
Create backup
|
|
</div>
|
|
</x-button.primary>
|
|
</div>
|
|
</x-modal>
|
|
@endif
|
|
</div> |