import { json } from '@sveltejs/kit';
import type { RequestHandler } from './$types';
import pool from '$lib/server/database'; // 1번에서 만든 DB 연결 풀

export const GET: RequestHandler = async () => {
	console.log('GET /api/get-cropped-videos - 요청 수신');
	const client = await pool.connect();

	try {
		// 사용자가 'TumerMovie'라고 했으나 'TumerMovie'일 수 있습니다.
		// 테이블명과 컬럼명('MovieType', 'id')이 대소문자를 구분하는 경우 큰따옴표(")를 사용하세요.
		const query = `
            SELECT * FROM "TumerMovie"
            WHERE "MovieType" = 1
            ORDER BY "Index" DESC;
        `;

		const result = await client.query(query);

		console.log(`GET /api/get-cropped-videos - ${result.rows.length}개 레코드 반환`);
		return json(result.rows);
	} catch (error) {
		console.error('Error fetching cropped videos:', error);
		// 'message'는 'any' 타입일 수 있으므로 캐스팅합니다.
		const errorMessage = (error as Error).message || 'Unknown database error';
		return json({ error: '데이터베이스 조회 중 오류가 발생했습니다.', details: errorMessage }, { status: 500 });
	} finally {
		// 클라이언트를 풀에 반환하여 연결 누수를 방지합니다.
		client.release();
	}
};