requireAdmin(); $roleManager = new UserRoleManager(); $pageTitle = 'Admin Panel - L\'Oréal OMG'; $message = ''; $messageType = ''; // Handle POST — update role if ($_SERVER['REQUEST_METHOD'] === 'POST') { $targetEmail = trim($_POST['email'] ?? ''); $targetRole = trim($_POST['role'] ?? ''); if ($targetEmail && in_array($targetRole, ['admin', 'user'], true)) { // Prevent admin from demoting themselves if (strtolower($targetEmail) === strtolower($user['email']) && $targetRole !== 'admin') { $message = 'You cannot remove your own admin role.'; $messageType = 'error'; } else { $roleManager->setRole($targetEmail, $targetRole); $message = "Role for " . htmlspecialchars($targetEmail) . " updated to " . htmlspecialchars($targetRole) . "."; $messageType = 'success'; } } else { $message = 'Invalid email or role.'; $messageType = 'error'; } } $allUsers = $roleManager->getAllUsers(); require_once __DIR__ . '/header.php'; ?>

Admin Panel — User Role Management

Set User Role

All Users ()

No users have been assigned roles yet. Roles are created automatically on first login.

Email Role Action