'Tournaments directory not found']); exit; } // Get all JSON files $files = glob($tournamentsDir . '*.json'); if ($files === false) { http_response_code(500); echo json_encode(['error' => 'Failed to read tournaments directory']); exit; } $tournaments = []; foreach ($files as $file) { $content = file_get_contents($file); if ($content === false) { continue; // Skip files that can't be read } $data = json_decode($content, true); if ($data === null) { continue; // Skip invalid JSON files } $tournaments[] = [ 'filename' => basename($file), 'id' => $data['id'] ?? null, 'name' => $data['name'] ?? 'Unknown', 'date' => $data['date'] ?? 'Unknown', 'players' => isset($data['players']) ? count($data['players']) : 0, 'status' => $data['status'] ?? 'unknown' ]; } // Return tournaments list echo json_encode([ 'tournaments' => $tournaments, 'count' => count($tournaments) ]);