diff --git a/resources/css/app.css b/resources/css/app.css index 1e5e0af..64167e9 100644 --- a/resources/css/app.css +++ b/resources/css/app.css @@ -167,6 +167,119 @@ html.qr-mobile-page body { pointer-events: none; } + .btn-warning { + display: inline-flex; + align-items: center; + justify-content: center; + gap: 0.5rem; + border-radius: 9999px; + border: 1px solid rgb(252 211 77); + background-color: #fff; + padding: 0.5rem 1rem; + font-size: 0.875rem; + line-height: 1.25rem; + font-weight: 600; + color: rgb(180 83 9); + box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); + transition: background-color 0.15s ease, border-color 0.15s ease; + } + + .btn-warning:hover { + background-color: rgb(255 251 235); + border-color: rgb(245 158 11); + } + + .btn-warning:disabled { + opacity: 0.6; + pointer-events: none; + } + + .btn-danger { + display: inline-flex; + align-items: center; + justify-content: center; + gap: 0.5rem; + border-radius: 9999px; + border: 1px solid rgb(254 202 202); + background-color: #fff; + padding: 0.5rem 1rem; + font-size: 0.875rem; + line-height: 1.25rem; + font-weight: 600; + color: rgb(185 28 28); + box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); + transition: background-color 0.15s ease, border-color 0.15s ease; + } + + .btn-danger:hover { + background-color: rgb(254 242 242); + border-color: rgb(252 165 165); + } + + .btn-danger:disabled { + opacity: 0.6; + pointer-events: none; + } + + .btn-danger-plain { + padding: 0; + border: none; + background: transparent; + border-radius: 0; + box-shadow: none; + font-weight: 500; + } + + .btn-danger-plain:hover { + background: transparent; + text-decoration: underline; + } + + .btn-link { + display: inline-flex; + align-items: center; + justify-content: center; + gap: 0.375rem; + border-radius: 9999px; + border: 1px solid transparent; + background-color: transparent; + padding: 0.5rem 0.75rem; + font-size: 0.875rem; + line-height: 1.25rem; + font-weight: 600; + color: rgb(67 56 202); + transition: background-color 0.15s ease, color 0.15s ease; + } + + .btn-link:hover { + background-color: rgb(238 242 255); + color: rgb(55 48 163); + } + + .btn-link:disabled { + opacity: 0.6; + pointer-events: none; + } + + .btn-link-plain { + padding: 0; + border: none; + background: transparent; + border-radius: 0; + font-weight: 500; + } + + .btn-link-plain:hover { + background: transparent; + text-decoration: underline; + } + + .btn-sm { + padding: 0.25rem 0.625rem; + font-size: 0.75rem; + line-height: 1rem; + } + .btn-group { display: flex; flex-wrap: wrap; diff --git a/resources/views/components/btn.blade.php b/resources/views/components/btn.blade.php new file mode 100644 index 0000000..ca40175 --- /dev/null +++ b/resources/views/components/btn.blade.php @@ -0,0 +1,34 @@ +@props([ + 'variant' => 'primary', + 'href' => null, + 'type' => 'button', + 'size' => null, + 'plain' => false, +]) + +@php + $tag = $href ? 'a' : 'button'; + + $variantClass = match ($variant) { + 'secondary' => 'btn-secondary', + 'warning' => 'btn-warning', + 'danger' => 'btn-danger', + 'link' => 'btn-link', + default => 'btn-primary', + }; + + $classes = collect([ + $variantClass, + $size === 'sm' ? 'btn-sm' : null, + ($plain && $variant === 'link') ? 'btn-link-plain' : null, + ($plain && $variant === 'danger') ? 'btn-danger-plain' : null, + ])->filter()->implode(' '); +@endphp + +<{{ $tag }} + @if ($href) href="{{ $href }}" @endif + @if ($tag === 'button') type="{{ $type }}" @endif + {{ $attributes->class([$classes]) }} +> + {{ $slot }} + diff --git a/resources/views/components/danger-zone.blade.php b/resources/views/components/danger-zone.blade.php new file mode 100644 index 0000000..c24603b --- /dev/null +++ b/resources/views/components/danger-zone.blade.php @@ -0,0 +1,12 @@ +@props([ + 'title' => null, +]) + +
class(['mt-6 space-y-3 rounded-2xl border border-slate-200 bg-slate-50/80 p-4']) }}> + @if ($title) +

{{ $title }}

+ @endif +
+ {{ $slot }} +
+
diff --git a/resources/views/frontdesk/admin/branches/index.blade.php b/resources/views/frontdesk/admin/branches/index.blade.php index 92ee23d..9165f4c 100644 --- a/resources/views/frontdesk/admin/branches/index.blade.php +++ b/resources/views/frontdesk/admin/branches/index.blade.php @@ -37,7 +37,7 @@

{{ $branch->address ?? 'No address' }} · {{ $branch->buildings_count }} building(s)

- Buildings + Buildings Edit
diff --git a/resources/views/frontdesk/admin/buildings/index.blade.php b/resources/views/frontdesk/admin/buildings/index.blade.php index e51fd31..e8145f8 100644 --- a/resources/views/frontdesk/admin/buildings/index.blade.php +++ b/resources/views/frontdesk/admin/buildings/index.blade.php @@ -1,7 +1,7 @@
- ← Branches + ← Branches

{{ $branch->name }}

@@ -20,11 +20,11 @@

{{ $building->name }}

{{ $building->reception_desks_count }} desk(s)

-
- Desks +
+ Desks
@csrf @method('DELETE') - + Remove
diff --git a/resources/views/frontdesk/admin/desks/index.blade.php b/resources/views/frontdesk/admin/desks/index.blade.php index a014f5b..dc68976 100644 --- a/resources/views/frontdesk/admin/desks/index.blade.php +++ b/resources/views/frontdesk/admin/desks/index.blade.php @@ -1,5 +1,5 @@ - ← Buildings + ← Buildings

{{ $building->name }}

@@ -18,7 +18,7 @@ @csrf @method('DELETE') - + Remove
@empty diff --git a/resources/views/frontdesk/admin/members/index.blade.php b/resources/views/frontdesk/admin/members/index.blade.php index 2995bc1..3d94dcf 100644 --- a/resources/views/frontdesk/admin/members/index.blade.php +++ b/resources/views/frontdesk/admin/members/index.blade.php @@ -40,7 +40,7 @@ @if ($member->user_ref !== auth()->user()->public_id)
@csrf @method('DELETE') - + Remove
@endif diff --git a/resources/views/frontdesk/audit/index.blade.php b/resources/views/frontdesk/audit/index.blade.php index 3501dea..512103f 100644 --- a/resources/views/frontdesk/audit/index.blade.php +++ b/resources/views/frontdesk/audit/index.blade.php @@ -5,7 +5,7 @@

Security and compliance activity

@if ($canExport) - Export CSV + Export CSV @endif @@ -19,7 +19,7 @@ - + Filter
diff --git a/resources/views/frontdesk/compliance/recovery.blade.php b/resources/views/frontdesk/compliance/recovery.blade.php index a3ed5ba..4f50c6d 100644 --- a/resources/views/frontdesk/compliance/recovery.blade.php +++ b/resources/views/frontdesk/compliance/recovery.blade.php @@ -15,7 +15,7 @@
@csrf - + Restore
@empty @@ -35,7 +35,7 @@
@csrf - + Restore
@empty diff --git a/resources/views/frontdesk/devices/edit.blade.php b/resources/views/frontdesk/devices/edit.blade.php index 539f671..265c16b 100644 --- a/resources/views/frontdesk/devices/edit.blade.php +++ b/resources/views/frontdesk/devices/edit.blade.php @@ -40,7 +40,14 @@

Device token

{{ $device->device_token }} @if ($device->type === 'kiosk') - Open kiosk URL + Open kiosk URL @if (! empty($kioskQrSvg))

Provision Ladill Kiosk app

@@ -53,21 +60,33 @@ @endif
- Back - + Back + Save
@if ($device->device_token) -
- @csrf - + + + @csrf + Regenerate token + +
+ @csrf @method('DELETE') + Remove device +
+
+ @else +
+ @csrf @method('DELETE') + + Remove device +
@endif - -
- @csrf @method('DELETE') - -
diff --git a/resources/views/frontdesk/devices/index.blade.php b/resources/views/frontdesk/devices/index.blade.php index 6b19099..283cd5f 100644 --- a/resources/views/frontdesk/devices/index.blade.php +++ b/resources/views/frontdesk/devices/index.blade.php @@ -53,10 +53,18 @@ {{ $device->last_online_at?->diffForHumans() ?? 'Never' }} @if ($canManage) - Edit - @endif - @if ($device->type === 'kiosk' && $device->device_token) - Open kiosk +
+ Edit + @if ($device->type === 'kiosk' && $device->device_token) + Open kiosk + @endif +
@endif diff --git a/resources/views/frontdesk/employee-portal/index.blade.php b/resources/views/frontdesk/employee-portal/index.blade.php index 2890396..4952043 100644 --- a/resources/views/frontdesk/employee-portal/index.blade.php +++ b/resources/views/frontdesk/employee-portal/index.blade.php @@ -51,7 +51,7 @@
@csrf - + Sign out for the day
@endif @@ -64,7 +64,7 @@
@csrf - + Sign out for the day
@endif diff --git a/resources/views/frontdesk/employees/edit.blade.php b/resources/views/frontdesk/employees/edit.blade.php index 65154e5..a2698b8 100644 --- a/resources/views/frontdesk/employees/edit.blade.php +++ b/resources/views/frontdesk/employees/edit.blade.php @@ -64,13 +64,15 @@ @endif
- Back - + Back + Save
-
+ @csrf @method('DELETE') - + + Remove employee +
diff --git a/resources/views/frontdesk/employees/index.blade.php b/resources/views/frontdesk/employees/index.blade.php index 6294c93..51fd138 100644 --- a/resources/views/frontdesk/employees/index.blade.php +++ b/resources/views/frontdesk/employees/index.blade.php @@ -55,7 +55,7 @@ Badge - Edit + Edit @empty diff --git a/resources/views/frontdesk/host-portal/index.blade.php b/resources/views/frontdesk/host-portal/index.blade.php index e84a07f..5cbe653 100644 --- a/resources/views/frontdesk/host-portal/index.blade.php +++ b/resources/views/frontdesk/host-portal/index.blade.php @@ -7,9 +7,7 @@
@csrf - + {{ $host->is_available ? 'Mark unavailable' : 'Mark available' }}
Pre-register visitor
diff --git a/resources/views/frontdesk/host-portal/schedule.blade.php b/resources/views/frontdesk/host-portal/schedule.blade.php index d0a0718..862b94a 100644 --- a/resources/views/frontdesk/host-portal/schedule.blade.php +++ b/resources/views/frontdesk/host-portal/schedule.blade.php @@ -47,8 +47,8 @@
- Cancel - + Cancel + Schedule visit
diff --git a/resources/views/frontdesk/hosts/index.blade.php b/resources/views/frontdesk/hosts/index.blade.php index c21d5c3..8c4c98c 100644 --- a/resources/views/frontdesk/hosts/index.blade.php +++ b/resources/views/frontdesk/hosts/index.blade.php @@ -39,7 +39,7 @@ {{ $host->office ?? '—' }} {{ $host->email ?? $host->phone ?? '—' }} - Edit + Edit @empty diff --git a/resources/views/frontdesk/reports/index.blade.php b/resources/views/frontdesk/reports/index.blade.php index f9a99a6..ccdf331 100644 --- a/resources/views/frontdesk/reports/index.blade.php +++ b/resources/views/frontdesk/reports/index.blade.php @@ -12,7 +12,7 @@
- + Apply
@@ -76,7 +76,7 @@

Staff attendance

@if ($canExport) - Export HR CSV + Export HR CSV @endif
diff --git a/resources/views/frontdesk/security/index.blade.php b/resources/views/frontdesk/security/index.blade.php index 225ad07..b1cb3e2 100644 --- a/resources/views/frontdesk/security/index.blade.php +++ b/resources/views/frontdesk/security/index.blade.php @@ -5,12 +5,8 @@

{{ $occupancy->count() }} visitors · {{ $staffOnSite->where('status', 'on_site')->count() }} staff on site · {{ $staffOnSite->where('status', 'stepped_out')->count() }} stepped out

- - Evacuation report - - - Verify badge - + Evacuation report + Verify badge
@@ -45,7 +41,7 @@ @if ($canCheckout)
@csrf - + Check out
@endif diff --git a/resources/views/frontdesk/security/verify.blade.php b/resources/views/frontdesk/security/verify.blade.php index 55363f7..5daa499 100644 --- a/resources/views/frontdesk/security/verify.blade.php +++ b/resources/views/frontdesk/security/verify.blade.php @@ -36,7 +36,7 @@
Watchlist
{{ str_replace('_', ' ', $visit->visitor->watchlist_status) }}
- View full visit record + View full visit record @else

No matching visit found for “{{ $lookup }}”.

diff --git a/resources/views/frontdesk/service-queues/console.blade.php b/resources/views/frontdesk/service-queues/console.blade.php index ff01946..a41f932 100644 --- a/resources/views/frontdesk/service-queues/console.blade.php +++ b/resources/views/frontdesk/service-queues/console.blade.php @@ -9,7 +9,7 @@
- ← Service queues + ← Service queues

{{ $counter['name'] ?? 'Counter' }}

{{ $counter['branch'] ?? '' }} · Ladill Queue console

diff --git a/resources/views/frontdesk/visitors/show.blade.php b/resources/views/frontdesk/visitors/show.blade.php index 6c03387..6e2759e 100644 --- a/resources/views/frontdesk/visitors/show.blade.php +++ b/resources/views/frontdesk/visitors/show.blade.php @@ -5,11 +5,13 @@

{{ $visitor->company }} · {{ $visitor->visit_count }} visits · {{ ucfirst(str_replace('_', ' ', $visitor->watchlist_status)) }}

@if ($canManage) - Quick check-in -
- @csrf @method('DELETE') - -
+
+ Quick check-in +
+ @csrf @method('DELETE') + Archive +
+
@endif @@ -69,7 +71,7 @@ @endforeach - + Update watchlist @endif diff --git a/resources/views/frontdesk/visits/create.blade.php b/resources/views/frontdesk/visits/create.blade.php index ae26970..bf44461 100644 --- a/resources/views/frontdesk/visits/create.blade.php +++ b/resources/views/frontdesk/visits/create.blade.php @@ -20,7 +20,7 @@ Frequent @endif - Quick check-in + Quick check-in @endforeach diff --git a/resources/views/frontdesk/visits/index.blade.php b/resources/views/frontdesk/visits/index.blade.php index d1cbe9e..af8248b 100644 --- a/resources/views/frontdesk/visits/index.blade.php +++ b/resources/views/frontdesk/visits/index.blade.php @@ -26,7 +26,7 @@ @endforeach - + Filter
diff --git a/resources/views/frontdesk/visits/show.blade.php b/resources/views/frontdesk/visits/show.blade.php index 6afafbb..52460fa 100644 --- a/resources/views/frontdesk/visits/show.blade.php +++ b/resources/views/frontdesk/visits/show.blade.php @@ -5,32 +5,32 @@

{{ $visit->visitor->full_name }}

{{ ucfirst(str_replace('_', ' ', $visit->visitor_type)) }} · Badge {{ $visit->badge_code }}

-
+
@if ($visit->isInside()) - Print badge - Preview + Print badge + Preview
@csrf - + Check out
@elseif ($canManage && $visit->awaitingApproval())
@csrf - + Approve & check in
@elseif ($canManage && $visit->canActivateCheckIn()) -
+ @csrf - + Check in
@elseif ($canManage && ! $visit->isInside())
@csrf @method('DELETE') - + Archive
@endif
@@ -41,17 +41,17 @@ @endif @if ($canManage && $visit->isPending() && ! $visit->awaitingApproval()) -
+
@if (in_array($visit->status, ['expected', 'scheduled', 'overdue'], true))
@csrf - + Mark waiting
@endif
@csrf - + Cancel visit
@endif diff --git a/resources/views/frontdesk/watchlist/index.blade.php b/resources/views/frontdesk/watchlist/index.blade.php index ab0dfc4..624640a 100644 --- a/resources/views/frontdesk/watchlist/index.blade.php +++ b/resources/views/frontdesk/watchlist/index.blade.php @@ -30,7 +30,7 @@ @endif @endforeach - + Filter
@@ -52,7 +52,7 @@ @if ($entry->visitor) - {{ $entry->full_name }} + {{ $entry->full_name }} @else {{ $entry->full_name }} @endif @@ -64,7 +64,7 @@ @if ($canManage)
@csrf @method('DELETE') - + Remove
@endif