import type { RowDataPacket } from 'mysql2' import { db, DB } from './db' /** * Creador de contenido destacado (`contentcreator`, el menú VIDEOS). * * Como en Django, se muestra SOLO el primero: la tabla se maneja desde el admin * y ahora mismo está vacía, así que la página enseña el aviso de "no hay * información" igual que hacía Django. */ export interface ContentCreator { title: string /** HTML de CKEditor. Se sanea antes de pintarlo (ver la página). */ description: string contentType: string subtitle: string youtubeVideoUrl: string | null avatarImageUrl: string | null youtubeChannelUrl: string | null facebookPageUrl: string | null } export async function getContentCreator(): Promise { try { const [rows] = await db(DB.default).query( `SELECT title, description, content_type, subtitle, youtube_video_url, avatar_image_url, youtube_channel_url, facebook_page_url FROM contentcreator ORDER BY id LIMIT 1`, ) const r = rows[0] if (!r) return null return { title: String(r.title), description: String(r.description ?? ''), contentType: String(r.content_type ?? ''), subtitle: String(r.subtitle ?? ''), youtubeVideoUrl: r.youtube_video_url ?? null, avatarImageUrl: r.avatar_image_url ?? null, youtubeChannelUrl: r.youtube_channel_url ?? null, facebookPageUrl: r.facebook_page_url ?? null, } } catch { return null } }