fix: updated from 9.3.3 to 15

This commit is contained in:
2026-06-17 17:49:00 +01:00
parent 8589c83fb8
commit e9555c9f74
9 changed files with 545 additions and 445 deletions
+3 -2
View File
@@ -3,6 +3,7 @@
import { query } from '@/lib/db';
import { NextResponse } from 'next/server';
import { DriverServerRow } from '@/types/racing';
export const dynamic = 'force-dynamic';
@@ -35,9 +36,9 @@ export async function GET() {
ORDER BY s.server_id, u.user_rank ASC
`;
const rows = await query(sql);
const rows = await query<DriverServerRow>(sql);
const drivers = rows.map((row: unknown) => ({
const drivers = rows.map((row) => ({
driver_guid: row.driver_guid,
driver_name: row.driver_name,
driver_team: row.driver_team,
+5 -6
View File
@@ -4,7 +4,7 @@
import { NextResponse } from 'next/server';
import { query } from '@/lib/db';
import { DriverWithServer } from '@/types/racing';
import { DriverServerRow } from '@/types/racing';
export async function GET(request: Request) {
try {
@@ -40,10 +40,10 @@ export async function GET(request: Request) {
ORDER BY u.user_rank ASC
`;
const rows = await query(sql);
const rows = await query<DriverServerRow>(sql);
// Transform to proper structure
const drivers: DriverWithServer[] = rows.map((row: unkown) => ({
const drivers = rows.map((row) => ({
driver_guid: row.driver_guid,
driver_name: row.driver_name,
driver_team: row.driver_team,
@@ -57,7 +57,6 @@ export async function GET(request: Request) {
is_loading: row.is_loading,
current_server: row.current_server,
created_at: row.created_at,
// Include server info if they're connected
server: row.server_id ? {
server_id: row.server_id,
server_name: row.server_name,
@@ -65,9 +64,9 @@ export async function GET(request: Request) {
session_type: row.session_type,
session_flag: row.session_flag,
connected_players: row.connected_players,
} : undefined,
} : null, // Handle case where driver is not connected to a server
}));
return NextResponse.json({
success: true,
data: drivers,
+9 -6
View File
@@ -3,6 +3,7 @@
import { NextResponse } from 'next/server';
import { query, queryOne } from '@/lib/db';
import { EventCheckRow } from '@/types/racing';
export async function POST(request: Request) {
try {
@@ -51,12 +52,14 @@ export async function POST(request: Request) {
}
// Check if event exists and is open
const eventCheck: unknown = await queryOne(
`SELECT event_id, event_status, max_participants,
(SELECT COUNT(*) FROM event_registrations
WHERE event_id = $1 AND status = 'REGISTERED') as current_registrations
FROM events WHERE event_id = $1`,
[eventId]
const eventCheck = await queryOne<EventCheckRow>(
`SELECT event_id, event_status, max_participants,
(SELECT COUNT(*) FROM event_registrations
WHERE event_id = $1 AND status = 'REGISTERED') as current_registrations
FROM events WHERE event_id = $1`,
[eventId]
);
if (!eventCheck) {
+13 -12
View File
@@ -3,6 +3,7 @@
import { getTelemetryBridge } from '@/lib/telemetryBridge';
import { query } from '@/lib/db';
import { RankRow } from '@/types/racing';
export const dynamic = 'force-dynamic';
export const runtime = 'nodejs';
@@ -20,20 +21,20 @@ async function updateRankCache() {
try {
// Get all users sorted by rank (higher is better)
const users = await query(
`SELECT
driver_guid,
user_rank,
ROW_NUMBER() OVER (ORDER BY user_rank DESC) as rank_position
FROM users
WHERE user_rank IS NOT NULL
ORDER BY user_rank DESC`
);
const users = await query<RankRow>(`
SELECT
driver_guid,
user_rank,
ROW_NUMBER() OVER (ORDER BY user_rank DESC) as rank_position
FROM users
WHERE user_rank IS NOT NULL
ORDER BY user_rank DESC
`);
rankCache.clear();
users.forEach((row: unknown) => {
rankCache.set(row.driver_guid.toString(), {
rank: row.rank_position,
users.forEach((row) => {
rankCache.set(String(row.driver_guid), {
rank: row.user_position,
rating: row.user_rank
});
});