import { promises as fs } from 'fs'
import path from 'path'

export default defineEventHandler(async (event) => {
  try {
    const galerieDir = path.join(process.cwd(), 'public', 'galerie')

    // Prüfe, ob das Verzeichnis existiert
    try {
      await fs.access(galerieDir)
    } catch {
      return []
    }

    // Lese alle Dateien im Verzeichnis
    const dateien = await fs.readdir(galerieDir)

    // Filtere nur Bilddateien
    const erlaubteExtensions = ['.jpg', '.jpeg', '.png', '.gif', '.webp', '.svg']
    const bilder = dateien.filter(datei => {
      const ext = path.extname(datei).toLowerCase()
      return erlaubteExtensions.includes(ext)
    })

    // Erstelle Bildobjekte mit Titel basierend auf Dateiname
    return bilder.map(filename => {
      const nameWithoutExt = path.parse(filename).name
      const title = nameWithoutExt
        .replace(/[-_]/g, ' ')
        .replace(/\b\w/g, l => l.toUpperCase())
      
      return {
        filename,
        title
      }
    })
  } catch (error) {
    console.error('Fehler beim Lesen der Galerie:', error)
    return []
  }
})
