diff --git a/Admin/Templates/ban.tpl b/Admin/Templates/ban.tpl index 5d1628ba..b24b026d 100644 --- a/Admin/Templates/ban.tpl +++ b/Admin/Templates/ban.tpl @@ -53,8 +53,27 @@ if(isset($_POST['action']) && $_POST['action'] == 'addBan') { } } +// ========================= HANDLE ADD IP BAN (issue #185) ========================= +if(isset($_POST['action']) && $_POST['action'] == 'addIpBan') { + $ip = trim($_POST['ip'] ?? ''); + $reason = trim($_POST['reason'] ?? ''); + $time = (int)($_POST['time'] ?? 0); + + if(@inet_pton($ip) === false) { + $error = "Invalid IP address!"; + } else { + $end = $time > 0 ? time() + $time : 0; + if($admin->AddIpBan($ip, $end, $reason)) { + $success = "IP ".htmlspecialchars($ip)." has been banned successfully!"; + } else { + $error = "Could not ban this IP!"; + } + } +} + // ========================= DATA ========================= $bannedUsers = $admin->search_banned(); +$bannedIps = $admin->search_banned_ip(); $banHistory = mysqli_query($database->dblink,"SELECT * FROM ".TB_PREFIX."banlist WHERE active=0 ORDER BY id DESC LIMIT 50"); ?>