Ejemplo n.º 1
0
 $dcount = 0;
 $fail = 0;
 foreach ($bids as $bid) {
     $bid = intval($bid);
     $demres = $GLOBALS['db']->Execute("SELECT filename FROM `" . DB_PREFIX . "_demos` WHERE `demid` = ?", array($bid));
     @unlink(SB_DEMOS . "/" . $demres->fields["filename"]);
     $blocked = $GLOBALS['db']->GetAll("SELECT s.sid, m.steam_universe FROM `" . DB_PREFIX . "_banlog` bl INNER JOIN " . DB_PREFIX . "_servers s ON s.sid = bl.sid INNER JOIN " . DB_PREFIX . "_mods m ON m.mid = s.modid WHERE bl.bid=? AND (UNIX_TIMESTAMP() - bl.time <= 300)", array($bid));
     $steam = $GLOBALS['db']->GetRow("SELECT b.name, b.authid, b.created, b.sid, b.RemoveType, b.ip, b.type, m.steam_universe, UNIX_TIMESTAMP() AS now\n\t\t\t\t\t\t\t\t\t\tFROM " . DB_PREFIX . "_bans b \n\t\t\t\t\t\t\t\t\t\tLEFT JOIN " . DB_PREFIX . "_servers s ON s.sid = b.sid\n\t\t\t\t\t\t\t\t\t\tLEFT JOIN " . DB_PREFIX . "_mods m ON m.mid = s.modid \n\t\t\t\t\t\t\t\t\t\tWHERE b.bid=?", array($bid));
     $block = $GLOBALS['db']->Execute("DELETE FROM `" . DB_PREFIX . "_banlog` WHERE bid = ?", array($bid));
     $res = $GLOBALS['db']->Execute("DELETE FROM `" . DB_PREFIX . "_bans` WHERE `bid` = ?", array($bid));
     if (empty($steam['RemoveType'])) {
         foreach ($blocked as $tempban) {
             SendRconSilent($steam['type'] == 0 ? "removeid STEAM_" . $tempban['steam_universe'] . substr($steam['authid'], 7) : "removeip " . $steam['ip'], $tempban['sid']);
         }
         if ((int) $steam['now'] - (int) $steam['created'] <= 300 && $steam['sid'] != "0" && !in_array_dim($steam['sid'], $blocked)) {
             SendRconSilent($steam['type'] == 0 ? "removeid STEAM_" . $steam['steam_universe'] . substr($steam['authid'], 7) : "removeip " . $steam['ip'], $steam['sid']);
         }
     }
     if ($res) {
         if (!isset($_GET['bulk'])) {
             echo "<script>ShowBox('Ban Deleted', 'The ban for \\'" . StripQuotes($steam['name']) . "\\' (" . ($steam['type'] == 0 ? $steam['authid'] : $steam['ip']) . ") has been deleted from SourceBans', 'green', 'index.php?p=banlist{$pagelink}');</script>";
         }
         $log = new CSystemLog("m", "Ban Deleted", "Ban '" . StripQuotes($steam['name']) . "' (" . ($steam['type'] == 0 ? $steam['authid'] : $steam['ip']) . ") has been deleted.");
         $dcount++;
     } else {
         if (!isset($_GET['bulk'])) {
             echo "<script>ShowBox('Ban NOT Deleted', 'The ban for \\'" . StripQuotes($steam['name']) . "\\' had an error while being removed.', 'red', 'index.php?p=banlist{$pagelink}', true);</script>";
         }
         $fail++;
     }
 }
Ejemplo n.º 2
0
            $cmd = "";
            switch ($steam['type']) {
                case 1:
                    $cmd = "sc_fw_unmute";
                    break;
                case 2:
                    $cmd = "sc_fw_ungag";
                    break;
                default:
                    break;
            }
            $res = $GLOBALS['db']->Execute("DELETE FROM `" . DB_PREFIX . "_comms` WHERE `bid` = ?", array($bid));
            if (empty($steam['RemoveType']) && ($length == 0 || $end > $now)) {
                $blocked = $GLOBALS['db']->GetAll("SELECT sid FROM `" . DB_PREFIX . "_servers` WHERE `enabled`=1");
                foreach ($blocked as $tempban) {
                    SendRconSilent($cmd . " " . $steam['authid'], $tempban['sid']);
                }
            }
            if ($res) {
                echo "<script>ShowBox('Block Deleted', 'The block for \\'" . StripQuotes($steam['name']) . "\\' (" . $steam['authid'] . ") has been deleted from SourceBans', 'green', 'index.php?p=commslist{$pagelink}');</script>";
                $log = new CSystemLog("m", "Block Deleted", "Block '" . StripQuotes($steam['name']) . "' (" . $steam['authid'] . ") has been deleted.");
            } else {
                echo "<script>ShowBox('Ban NOT Deleted', 'The ban for \\'" . StripQuotes($steam['name']) . "\\' had an error while being removed.', 'red', 'index.php?p=commslist{$pagelink}', true);</script>";
            }
        }
    }
}
// LIMIT для SQL запроса - по номеру страницы и числу банов на страницу
$BansStart = intval(($page - 1) * $BansPerPage);
$BansEnd = intval($BansStart + $BansPerPage);
// hide inactive bans feature