Files
ladill-queue/resources/views/qms/devices/create.blade.php
T
isaaccladandCursor 492eec9cda
Deploy Ladill Queue / deploy (push) Successful in 36s
Add self-service kiosk for queue ticket issuance.
Customers can pick a service, optionally enter details, and receive a ticket on a branded touchscreen flow with admin-configurable queues and auto-reset.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 23:25:51 +00:00

91 lines
4.3 KiB
PHP

<x-app-layout title="Register device">
<div class="mx-auto max-w-lg">
<form
method="POST"
action="{{ route('qms.devices.store') }}"
class="space-y-4 rounded-2xl border bg-white p-6"
x-data="{ type: '{{ old('type', 'kiosk') }}' }"
>
@csrf
<div>
<label class="block text-sm font-medium">Name</label>
<input name="name" value="{{ old('name') }}" required class="mt-1 w-full rounded-lg border-slate-300 text-sm">
</div>
<div>
<label class="block text-sm font-medium">Type</label>
<select name="type" x-model="type" class="mt-1 w-full rounded-lg border-slate-300 text-sm">
@foreach ($deviceTypes as $k => $v)
<option value="{{ $k }}" @selected(old('type', 'kiosk') === $k)>{{ $v }}</option>
@endforeach
</select>
</div>
<div>
<label class="block text-sm font-medium">Branch</label>
<select name="branch_id" class="mt-1 w-full rounded-lg border-slate-300 text-sm">
<option value=""></option>
@foreach ($branches as $b)
<option value="{{ $b->id }}" @selected((string) old('branch_id') === (string) $b->id)>{{ $b->name }}</option>
@endforeach
</select>
<p class="mt-1 text-xs text-slate-500">Optional. Limits which queues appear on this kiosk.</p>
</div>
<div x-show="type === 'kiosk'" x-cloak class="space-y-4 rounded-xl border border-slate-200 bg-slate-50 p-4">
<div>
<p class="text-sm font-medium text-slate-900">Kiosk queues</p>
<p class="mt-1 text-xs text-slate-500">Leave unchecked to show all active queues for the branch.</p>
<div class="mt-3 space-y-2">
@foreach ($queues as $q)
<label class="flex gap-2 text-sm text-slate-700">
<input
type="checkbox"
name="queue_ids[]"
value="{{ $q->id }}"
@checked(in_array($q->id, old('queue_ids', [])))
>
{{ $q->name }}
</label>
@endforeach
</div>
</div>
<div>
<label class="block text-sm font-medium">Welcome message</label>
<input
name="welcome_message"
value="{{ old('welcome_message') }}"
class="mt-1 w-full rounded-lg border-slate-300 text-sm"
placeholder="Tap a service below to get your ticket"
>
</div>
<div class="grid gap-3 sm:grid-cols-2">
<label class="flex items-center gap-2 text-sm">
<input type="checkbox" name="collect_name" value="1" @checked(old('collect_name'))>
Ask for name
</label>
<label class="flex items-center gap-2 text-sm">
<input type="checkbox" name="collect_phone" value="1" @checked(old('collect_phone'))>
Ask for phone
</label>
</div>
<div>
<label class="block text-sm font-medium">Auto-reset (seconds)</label>
<input
type="number"
name="reset_seconds"
min="5"
max="120"
value="{{ old('reset_seconds', 15) }}"
class="mt-1 w-full rounded-lg border-slate-300 text-sm"
>
<p class="mt-1 text-xs text-slate-500">Return to the welcome screen after a ticket is issued.</p>
</div>
</div>
<button type="submit" class="btn-primary w-full">Register</button>
</form>
</div>
</x-app-layout>