public function run($name) { // validate user input if (strlen($name) > 16 || !preg_match("/^[0-9a-zA-Z_]{1,16}\$/", $name)) { $this->println("Invalid name."); return; } $page = new Page("check", false); $history = $page->settings->table['history']; try { $stmt = $page->conn->prepare("SELECT name,uuid FROM {$history} WHERE name=? ORDER BY date LIMIT 1"); if ($stmt->execute(array($name))) { if ($row = $stmt->fetch()) { $name = $row['name']; $uuid = $row['uuid']; } } if (!isset($uuid)) { $name = htmlspecialchars($name, ENT_QUOTES, 'UTF-8'); $this->println("{$name} has not joined before."); return; } $table = $page->settings->table['bans']; $stmt = $page->conn->prepare("SELECT * FROM {$table} WHERE (uuid=? AND active=" . Settings::$TRUE . ") LIMIT 1"); if ($stmt->execute(array($uuid))) { if (!($row = $stmt->fetch())) { $this->println("{$name} is not banned."); return; } $banner = $page->get_banner_name($row); $reason = $page->clean($row['reason']); $time = $page->millis_to_date($row['time']); $until = $page->millis_to_date($row['until']); $this->println("{$name} is banned!"); $this->println("Banned by: {$banner}"); $this->println("Reason: {$reason}"); $this->println("Banned on: {$time}"); if ($row['until'] > 0) { $this->println("Banned until: {$until}"); } else { $this->println("Banned permanently."); } } } catch (PDOException $ex) { die($ex->getMessage()); } }
<?php namespace litebans; use PDO; require_once './includes/page.php'; $page = new Page("mutes"); $page->print_title(); $headers = array("Name", "Muted By", "Reason", "Muted On", "Muted Until"); $page->print_page_header(); $page->table_begin(); $page->table_print_headers($headers); $result = $page->run_query(); while ($row = $result->fetch(PDO::FETCH_ASSOC)) { $player_name = $page->get_name($row['uuid']); if ($player_name === null) { continue; } $page->print_table_rows($row, array('Name' => $page->get_avatar($player_name, $row['uuid']), 'Muted By' => $page->get_avatar($page->get_banner_name($row), $row['banned_by_uuid']), 'Reason' => $page->clean($row['reason']), 'Muted On' => $page->millis_to_date($row['time']), 'Muted Until' => $page->expiry($row))); } $page->table_end(); $page->print_pager(); $page->print_footer();
<?php namespace litebans; use PDO; require_once './includes/page.php'; $page = new Page("warnings"); $page->print_title(); $headers = array("Name", "Warned By", "Reason", "Warned Until", "Received Warning?"); $page->print_page_header(); $page->table_begin(); $page->table_print_headers($headers); $result = $page->run_query(); while ($row = $result->fetch(PDO::FETCH_ASSOC)) { $player_name = $page->get_name($row['uuid']); if ($player_name === null) { continue; } $page->print_table_rows($row, array('Name' => $page->get_avatar($player_name, $row['uuid']), 'Warned By' => $page->get_avatar($page->get_banner_name($row), $row['banned_by_uuid']), 'Reason' => $page->clean($row['reason']), 'Warned Until' => $page->expiry($row), 'Received Warning?' => $row['warned'] ? "Yes" : "No")); } $page->table_end(); $page->print_pager(); $page->print_footer();