query('SELECT * FROM courts ORDER BY name')->fetchAll()); } public function referees(): void { Response::json(Database::connection()->query('SELECT * FROM referees ORDER BY name')->fetchAll()); } public function sanction(array $params): void { Auth::requireRole(['admin', 'delegate']); $data = Request::json(); $stmt = Database::connection()->prepare( 'INSERT INTO sanctions (match_id, team_id, player_id, card_type, reason) VALUES (:match_id, :team_id, :player_id, :card_type, :reason)' ); $stmt->execute([ 'match_id' => (int) $params['id'], 'team_id' => $data['team_id'] ?? null, 'player_id' => $data['player_id'] ?? null, 'card_type' => $data['card_type'] ?? 'yellow', 'reason' => $data['reason'] ?? null, ]); Response::json(['created' => true], 201); } }