69 lines
2.7 KiB
HTML
69 lines
2.7 KiB
HTML
@use super::base_html;
|
|
@use super::components::return_to_main_html;
|
|
@use super::components::dancer_html;
|
|
@use cm_lib::models::Dancer;
|
|
|
|
@(dancers: Vec<Dancer>)
|
|
|
|
@:base_html({
|
|
|
|
<div class="fixed right-0 top-0 pr-4 pt-4">
|
|
@:return_to_main_html()
|
|
</div>
|
|
|
|
<h1 class="text-4xl underline text-center pt-4 pb-6">
|
|
Dancers
|
|
</h1>
|
|
|
|
<table class="m-auto table-auto w-4/5">
|
|
<thead class="text-xs text-gray-700 bg-gray-50">
|
|
<tr>
|
|
<th scope="col" class="px-6 py-3">Name</th>
|
|
<th scope="col" class="px-6 py-3">Stage Name</th>
|
|
<th></th>
|
|
</tr>
|
|
</thead>
|
|
|
|
<tbody id="dancer_list">
|
|
<tr hx-target="this" class="bg-white even:bg-neutral-50 border-b">
|
|
<form hx-post="/api/dancers" hx-swap="afterend"
|
|
hx-on::after-request=" if(event.detail.successful) this.reset()">
|
|
<td>
|
|
<div class="relative">
|
|
<input type="text" id="name" name="name"
|
|
class="block px-2.5 pb-2.5 pt-4 w-full text-sm text-gray-900 bg-transparent rounded-lg border-2 border-gray-300 appearance-none focus:outline-none focus:ring-0 focus:border-blue-600 peer"
|
|
placeholder=" " />
|
|
<label for="name"
|
|
class="absolute text-sm text-gray-500 duration-300 transform -translate-y-4 scale-75 top-2 z-10 origin-[0] bg-white px-2 peer-focus:px-2 peer-focus:text-blue-600 peer-placeholder-shown:scale-100 peer-placeholder-shown:-translate-y-1/2 peer-placeholder-shown:top-1/2 peer-focus:top-2 peer-focus:scale-75 peer-focus:-translate-y-4 left-1">
|
|
Name
|
|
</label>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<div class="relative">
|
|
<input type="text" id="stage_name" name="stage_name"
|
|
class="block px-2.5 pb-2.5 pt-4 w-full text-sm text-gray-900 bg-transparent rounded-lg border-2 border-gray-300 appearance-none focus:outline-none focus:ring-0 focus:border-blue-600 peer"
|
|
placeholder=" " />
|
|
<label for="stage_name"
|
|
class="absolute text-sm text-gray-500 duration-300 transform -translate-y-4 scale-75 top-2 z-10 origin-[0] bg-white px-2 peer-focus:px-2 peer-focus:text-blue-600 peer-placeholder-shown:scale-100 peer-placeholder-shown:-translate-y-1/2 peer-placeholder-shown:top-1/2 peer-focus:top-2 peer-focus:scale-75 peer-focus:-translate-y-4 left-1">
|
|
Stage Name
|
|
</label>
|
|
</div>
|
|
</td>
|
|
|
|
<td class="w-10 h-full">
|
|
<button type="submit"
|
|
class="focus:outline-none text-white bg-green-700 hover:bg-green-800 focus:ring-4 focus:ring-green-300 font-medium rounded-lg text-sm w-full h-full">+</button>
|
|
</td>
|
|
|
|
</form>
|
|
</tr>
|
|
@for dancer in dancers.into_iter() {
|
|
|
|
@:dancer_html(dancer)
|
|
|
|
}
|
|
</tbody>
|
|
</table>
|
|
|
|
})
|