This commit is contained in:
Saufi
2026-06-02 17:35:45 +08:00
commit 4ef99b1f81
148 changed files with 21134 additions and 0 deletions

View File

@@ -0,0 +1,125 @@
@extends('layouts.admin')
@section('title', 'Senarai Pengguna')
@section('content')
<div class="d-flex justify-content-between align-items-center mb-4">
<h4 class="fw-bold mb-0"><i class="bi bi-people me-2 text-primary"></i>Senarai Pengguna</h4>
<a href="{{ route('admin.users.create') }}" class="btn btn-primary">
<i class="bi bi-person-plus me-1"></i>Daftar Pengguna Baru
</a>
</div>
{{-- Filter --}}
<div class="card mb-3">
<div class="card-body py-2">
<form method="GET" class="row g-2 align-items-center">
<div class="col-md-4">
<input type="text" class="form-control form-control-sm" name="search"
value="{{ request('search') }}" placeholder="Cari nama atau e-mel...">
</div>
<div class="col-md-3">
<select class="form-select form-select-sm" name="status">
<option value="">Semua Status</option>
<option value="active" {{ request('status') === 'active' ? 'selected' : '' }}>Aktif</option>
<option value="inactive" {{ request('status') === 'inactive' ? 'selected' : '' }}>Dinyahaktif</option>
</select>
</div>
<div class="col-auto">
<button class="btn btn-sm btn-outline-secondary" type="submit">
<i class="bi bi-search me-1"></i>Cari
</button>
<a href="{{ route('admin.users.index') }}" class="btn btn-sm btn-outline-secondary ms-1">Padam Carian</a>
</div>
</form>
</div>
</div>
{{-- Table --}}
<div class="card">
<div class="card-body p-0">
<div class="table-responsive">
<table class="table table-hover mb-0">
<thead class="table-light">
<tr>
<th>Nama</th>
<th>E-mel</th>
<th>Jabatan</th>
<th>Status</th>
<th>Log Masuk Terakhir</th>
<th>Tindakan</th>
</tr>
</thead>
<tbody>
@forelse($users as $user)
<tr>
<td>
<span class="fw-semibold">{{ $user->name }}</span>
</td>
<td>{{ $user->email }}</td>
<td>{{ $user->department?->name ?? '—' }}</td>
<td>
@if($user->is_active)
<span class="badge bg-success">Aktif</span>
@else
<span class="badge bg-secondary">Dinyahaktif</span>
@endif
</td>
<td>
{{ $user->last_login_at?->format('d/m/Y H:i') ?? 'Belum pernah' }}
</td>
<td>
<div class="d-flex gap-1">
<a href="{{ route('admin.users.edit', $user) }}"
class="btn btn-sm btn-outline-primary" title="Edit E-mel">
<i class="bi bi-pencil"></i>
</a>
@if($user->is_active)
<form method="POST" action="{{ route('admin.users.deactivate', $user) }}"
onsubmit="return confirm('Dinyahaktifkan akaun {{ $user->name }}?')">
@csrf @method('PATCH')
<button class="btn btn-sm btn-outline-warning" title="Nyahaktif">
<i class="bi bi-person-x"></i>
</button>
</form>
@else
<form method="POST" action="{{ route('admin.users.activate', $user) }}">
@csrf @method('PATCH')
<button class="btn btn-sm btn-outline-success" title="Aktifkan">
<i class="bi bi-person-check"></i>
</button>
</form>
@endif
@if(! $user->hasUsage())
<form method="POST" action="{{ route('admin.users.destroy', $user) }}"
onsubmit="return confirm('PADAM akaun {{ $user->name }} secara kekal?')">
@csrf @method('DELETE')
<button class="btn btn-sm btn-outline-danger" title="Padam">
<i class="bi bi-trash"></i>
</button>
</form>
@endif
</div>
</td>
</tr>
@empty
<tr>
<td colspan="6" class="text-center text-muted py-4">
<i class="bi bi-inbox fs-4 d-block mb-2"></i>Tiada pengguna ditemui.
</td>
</tr>
@endforelse
</tbody>
</table>
</div>
</div>
@if($users->hasPages())
<div class="card-footer bg-white">
{{ $users->links() }}
</div>
@endif
</div>
@endsection