'error', 'message' => 'Sesi habis, silakan login kembali.']); exit; } header('Location: /uas/login.php'); exit; } } function requireSuperAdmin() { requireLogin(); if ($_SESSION['user']['role'] !== 'superadmin') { http_response_code(403); echo json_encode(['status' => 'error', 'message' => 'Akses ditolak. Hanya superadmin.']); exit; } } function isSuperAdmin() { return ($_SESSION['user']['role'] ?? '') === 'superadmin'; } function currentUser() { return $_SESSION['user'] ?? null; } function esc($conn, $v) { return mysqli_real_escape_string($conn, trim((string)$v)); }