117 lines
5.3 KiB
PHP
117 lines
5.3 KiB
PHP
@extends('admin.layouts.app')
|
|
|
|
@section('title', 'Manajemen Pengguna')
|
|
|
|
@section('content')
|
|
<div class="container-fluid">
|
|
<!-- Breadcrumb -->
|
|
<nav aria-label="breadcrumb" class="mb-4">
|
|
<ol class="breadcrumb">
|
|
<li class="breadcrumb-item"><a href="{{ route('admin.dashboard') }}">Dashboard</a></li>
|
|
<li class="breadcrumb-item active">Manajemen Pengguna</li>
|
|
</ol>
|
|
</nav>
|
|
|
|
<!-- Header -->
|
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
|
<div>
|
|
<h2 class="mb-1"><i class="bi bi-people-fill me-2"></i>Manajemen Pengguna</h2>
|
|
<p class="text-muted mb-0">Kelola pengguna sistem, peran (role), dan hak akses login</p>
|
|
</div>
|
|
<div>
|
|
<a href="{{ route('admin.users.create') }}" class="btn btn-success">
|
|
<i class="bi bi-plus-circle me-2"></i>Tambah Pengguna
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Alert -->
|
|
@if (session('success'))
|
|
<div class="alert alert-success alert-dismissible fade show" role="alert">
|
|
<i class="bi bi-check-circle-fill me-2"></i>{{ session('success') }}
|
|
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
|
|
</div>
|
|
@endif
|
|
|
|
@if (session('error'))
|
|
<div class="alert alert-danger alert-dismissible fade show" role="alert">
|
|
<i class="bi bi-exclamation-triangle-fill me-2"></i>{{ session('error') }}
|
|
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
|
|
</div>
|
|
@endif
|
|
|
|
<!-- Table Card -->
|
|
<div class="card shadow-sm border-0">
|
|
<div class="card-header bg-white py-3">
|
|
<div class="d-flex justify-content-between align-items-center">
|
|
<h5 class="mb-0">Daftar Pengguna Sistem</h5>
|
|
<span class="badge bg-secondary">Total: {{ $users->count() }} Pengguna</span>
|
|
</div>
|
|
</div>
|
|
<div class="card-body p-0">
|
|
<div class="table-responsive">
|
|
<table class="table table-hover table-striped mb-0">
|
|
<thead class="table-success">
|
|
<tr>
|
|
<th width="50" class="text-center">No</th>
|
|
<th>Nama Lengkap</th>
|
|
<th>Email</th>
|
|
<th>Peran (Role)</th>
|
|
<th>Tanggal Dibuat</th>
|
|
<th width="150" class="text-center">Aksi</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@forelse ($users as $index => $u)
|
|
<tr>
|
|
<td class="text-center">{{ $index + 1 }}</td>
|
|
<td><strong>{{ $u->name }}</strong></td>
|
|
<td>{{ $u->email }}</td>
|
|
<td>
|
|
@php
|
|
$role = $u->roles->first()?->name;
|
|
@endphp
|
|
@if($role === 'superadmin')
|
|
<span class="badge bg-danger">Superadmin</span>
|
|
@elseif($role === 'admin')
|
|
<span class="badge bg-success">Admin</span>
|
|
@else
|
|
<span class="badge bg-primary">User (Viewer)</span>
|
|
@endif
|
|
</td>
|
|
<td>{{ $u->created_at->format('d/m/Y H:i') }}</td>
|
|
<td class="text-center">
|
|
<div class="btn-group btn-group-sm" role="group">
|
|
<a href="{{ route('admin.users.edit', $u->id) }}" class="btn btn-warning" title="Edit">
|
|
<i class="bi bi-pencil"></i>
|
|
</a>
|
|
|
|
@if(auth()->id() !== $u->id)
|
|
<form action="{{ route('admin.users.destroy', $u->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Yakin ingin menghapus pengguna ini?')">
|
|
@csrf
|
|
@method('DELETE')
|
|
<button type="submit" class="btn btn-danger btn-sm" title="Hapus">
|
|
<i class="bi bi-trash"></i>
|
|
</button>
|
|
</form>
|
|
@else
|
|
<button class="btn btn-secondary disabled" title="Tidak bisa menghapus akun sendiri" disabled>
|
|
<i class="bi bi-trash"></i>
|
|
</button>
|
|
@endif
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr>
|
|
<td colspan="6" class="text-center text-muted py-4">Belum ada data pengguna</td>
|
|
</tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endsection
|