import { supabaseAdmin } from '../../lib/supabase';

export default async function handler(req, res) {
  if (req.method !== 'DELETE') {
    return res.status(405).json({ error: 'Method not allowed' });
  }

  // Get user from supabase session
  const { data: sessionData, error: authError } = await supabaseAdmin.auth.getUser(req.cookies['sb-access-token']);
  
  if (authError || !sessionData?.user) {
    return res.status(401).json({ error: 'Unauthorized' });
  }
  
  const user = sessionData.user;

  const { id } = req.body;

  if (!id) {
    return res.status(400).json({ error: 'ID ist erforderlich' });
  }

  try {
    const { error } = await supabaseAdmin
      .from('blog_entries')
      .delete()
      .eq('id', id)
      .eq('author_id', user.id);

    if (error) {
      console.error('Supabase Lösch-Fehler:', error);
      return res.status(500).json({ error: 'Fehler beim Löschen des Beitrags' });
    }

    return res.status(200).json({ message: 'Beitrag erfolgreich gelöscht' });
  } catch (error) {
    console.error('Server-Fehler:', error);
    return res.status(500).json({ error: 'Interner Server-Fehler' });
  }
}
