KTV/resources/views/livewire/admin/song-form.blade.php
2025-04-30 16:10:47 +08:00

77 lines
3.6 KiB
PHP

<x-wireui:modal-card title="{{ $songId ? '編輯歌曲' : '新增歌曲' }}" wire:model.defer="showCreateModal">
<form wire:submit.prevent="save">
<div class="grid grid-cols-3 gap-4 sm:grid-cols-3">
<x-wireui:input label="歌曲編號" wire:model.defer="fields.id" required />
<x-wireui:input label="歌曲名稱" wire:model.defer="fields.name" required />
<x-wireui:input label="檔名" wire:model.defer="fields.filename" />
</div>
<div class="grid grid-cols-3 gap-4 sm:grid-cols-3">
<x-wireui:select
label="歌手"
wire:model.defer="selectedArtists"
placeholder="輸入搜尋歌手"
:async-data="route('api.artists.search')"
option-label="name"
option-value="id"
multiselect
hide-empty-message
/>
<x-wireui:select
label="語言類型"
wire:model.defer="fields.language_type"
placeholder="選擇語言"
:options="$songLanguageType"
option-label="name"
option-value="value"
/>
<x-wireui:select
label="分類"
wire:model.defer="selectedCategories"
:options="$songCategories->map(fn($c) => ['label' => $c->name, 'value' => $c->id])->toArray()"
option-label="label"
option-value="value"
multiselect
placeholder="選擇分類"
/>
</div>
<div class="grid grid-cols-3 gap-4 sm:grid-cols-3">
<x-wireui:select
label="情境"
wire:model.defer="fields.situation"
placeholder="選擇情境"
:options="$songSituation"
option-label="name"
option-value="value"
/>
<x-wireui:input label="分貝增減" wire:model.defer="fields.db_change" />
<x-wireui:input label="新增日期" wire:model.defer="fields.adddate" type="date" />
</div>
<div class="grid grid-cols-2 gap-4 sm:grid-cols-2">
<x-wireui:toggle label="人聲" wire:model.defer="fields.vocal" />
<x-wireui:toggle label="啟用" wire:model.defer="fields.enable" />
</div>
<div class="grid grid-cols-2 gap-4 sm:grid-cols-2">
<x-wireui:input label="版權1" wire:model.defer="fields.copyright01" />
<x-wireui:input label="版權2" wire:model.defer="fields.copyright02" />
</div>
<div class="grid grid-cols-2 gap-4 sm:grid-cols-4">
<x-wireui:textarea label="備註1" wire:model.defer="fields.note01" />
<x-wireui:textarea label="備註2" wire:model.defer="fields.note02" />
<x-wireui:textarea label="備註3" wire:model.defer="fields.note03" />
<x-wireui:textarea label="備註4" wire:model.defer="fields.note04" />
</div>
{{-- Footer --}}
<x-slot name="footer">
<div class="flex justify-between w-full">
<x-wireui:button flat label="取消" @click="$wire.showCreateModal = false" />
<x-wireui:button primary type="submit" label="儲存" />
</div>
</x-slot>
</form>
</x-wireui:modal-card>