import 'package:flutter/material.dart';
import 'package:geosector_app/presentation/widgets/app_scaffold.dart';
import 'package:geosector_app/presentation/admin/admin_connexions_page.dart';
import 'package:geosector_app/app.dart';

/// Page des connexions et événements utilisant AppScaffold.
/// Accessible uniquement aux administrateurs (rôle >= 2).
///
/// - Admin Amicale (rôle 2) : voit les connexions de son amicale uniquement
/// - Super Admin (rôle >= 3) : voit les connexions de toutes les amicales
class ConnexionsPage extends StatelessWidget {
  const ConnexionsPage({super.key});

  @override
  Widget build(BuildContext context) {
    // Vérifier le rôle pour l'accès
    final currentUser = userRepository.getCurrentUser();
    final userRole = currentUser?.role ?? 1;

    // Vérifier que l'utilisateur a le rôle 2 minimum (admin amicale)
    if (userRole < 2) {
      // Rediriger vers le dashboard user
      WidgetsBinding.instance.addPostFrameCallback((_) {
        Navigator.of(context).pushReplacementNamed('/user/dashboard');
      });
      return const SizedBox.shrink();
    }

    return AppScaffold(
      key: const ValueKey('connexions_scaffold_admin'),
      selectedIndex: 6, // Connexions est l'index 6
      pageTitle: 'Connexions',
      body: AdminConnexionsPage(
        userRepository: userRepository,
        amicaleRepository: amicaleRepository,
      ),
    );
  }
}
