import 'package:flutter/material.dart';
import 'package:afterwork/data/models/event_model.dart';

import '../screens/event/event_card.dart';

class EventList extends StatelessWidget {
  final List<EventModel> events;

  const EventList({Key? key, required this.events}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return ListView.builder(
      itemCount: events.length,
      itemBuilder: (context, index) {
        final event = events[index];

        return EventCard(
          event: event,
          userId: 'user_id_here',  // Vous pouvez passer l'ID réel de l'utilisateur connecté
          userName: 'John',  // Vous pouvez passer le prénom réel de l'utilisateur
          userLastName: 'Doe',  // Vous pouvez passer le nom réel de l'utilisateur
          onReact: () => _handleReact(event),
          onComment: () => _handleComment(event),
          onShare: () => _handleShare(event),
          onParticipate: () => _handleParticipate(event),
          onCloseEvent: () => _handleCloseEvent(event),
          onReopenEvent: () => _handleReopenEvent(event),
          onRemoveEvent: () => _handleRemoveEvent(event),
          status: '',

        );
      },
    );
  }

  // Gestion des actions
  void _handleReact(EventModel event) {
    print('Réaction ajoutée à l\'événement ${event.title}');
  }

  void _handleComment(EventModel event) {
    print('Commentaire ajouté à l\'événement ${event.title}');
  }

  void _handleShare(EventModel event) {
    print('Événement partagé : ${event.title}');
  }

  void _handleParticipate(EventModel event) {
    print('Participation confirmée à l\'événement ${event.title}');
  }

  void _handleCloseEvent(EventModel event) {
    print('Événement ${event.title} fermé');
  }

  void _handleReopenEvent(EventModel event) {
    print('Événement ${event.title} réouvert');
  }

  void _handleRemoveEvent(EventModel event) {
    print('Événement ${event.title} retiré');
  }


}
