getUserArray($session, 1); if (!$admin || (int)$admin['access'] !== 9) { die('

Access Denied: You are not Admin!

'); } // --------------------------------------------------------------------------- // Input // --------------------------------------------------------------------------- $duration = (int)($_POST['duration'] ?? 0) * 3600; $start = trim($_POST['start'] ?? ''); $reason = trim($_POST['reason'] ?? 'Maintenance ban'); $access = 2; // jucători normali $startts = $start ? strtotime($start) : time(); if ($startts === false) $startts = time(); $endts = $startts + $duration; if ($duration <= 0) $endts = $startts + 86400; // default 1 zi $reasonEsc = $database->escape($reason); $adminId = (int)$session; // --------------------------------------------------------------------------- // Ban în masă – un singur query // --------------------------------------------------------------------------- $database->query( "INSERT INTO " . TB_PREFIX . "banlist (uid, name, reason, time, end, admin, active) SELECT id, username, '$reasonEsc', $startts, $endts, $adminId, 1 FROM " . TB_PREFIX . "users WHERE access = $access AND id > 3 ON DUPLICATE KEY UPDATE reason = VALUES(reason), time = VALUES(time), end = VALUES(end), admin = VALUES(admin), active = 1" ); // --------------------------------------------------------------------------- // Log admin // --------------------------------------------------------------------------- $time = time(); $logText = "Mass ban for access=$access, duration=" . ($duration/3600) . "h, reason='$reasonEsc'"; $logEsc = $database->escape($logText); $database->query( "INSERT INTO " . TB_PREFIX . "admin_log (`id`, `user`, `log`, `time`) " . "VALUES (0, '$adminId', '$logEsc', $time)" ); header("Location: ../../../Admin/admin.php?p=ban&m=1"); exit; ?>