{% extends 'school/base.html.twig' %}

{% block title %}Classes | SALSABIL Madrassas{% endblock %}

{% block content %}
    <div class="admin-page-stack">
        <section class="admin-page-header">
            <div>
                <p class="admin-eyebrow">PÉDAGOGIE</p>
                <h1 class="admin-page-title">Classes et groupes</h1>
                <p>Configurez les groupes selon la section, la langue, le public, le mode et les horaires.</p>
            </div>
            <a class="admin-btn admin-btn-primary" href="{{ path('school_classe_new') }}">Nouvelle classe</a>
        </section>

        <section class="school-summary-grid">
            <article class="school-summary-card"><span>Total</span><strong>{{ classes|length }}</strong></article>
            <article class="school-summary-card"><span>Actives</span><strong>{{ classes|filter(classe => classe.active)|length }}</strong></article>
            <article class="school-summary-card"><span>Avec tarif</span><strong>{{ classes|filter(classe => classe.tarifDefaut)|length }}</strong></article>
        </section>

        <section class="admin-card admin-table-card">
            <div class="admin-card-head">
                <div>
                    <h2>Groupes configurés</h2>
                    <p>Les classes actives peuvent être présentées sur la page publique avec leurs tarifs.</p>
                </div>
            </div>

            {% if classes is empty %}
                <div class="admin-empty-state">
                    <span class="material-symbols-outlined">meeting_room</span>
                    <strong>Aucune classe configurée</strong>
                    <p>Créez un groupe pour préparer les futures affectations d’apprenants.</p>
                    <a class="btn admin-btn admin-btn-primary" href="{{ path('school_classe_new') }}">Créer une classe</a>
                </div>
            {% else %}
                <div class="table-responsive">
                    <table class="table admin-table school-table align-middle mb-0">
                        <thead>
                        <tr>
                            <th>Classe</th>
                            <th>Section</th>
                            <th>Niveau</th>
                            <th>Langue / public</th>
                            <th>Mode</th>
                            <th>Tarif</th>
                            <th class="text-end">Actions</th>
                        </tr>
                        </thead>
                        <tbody>
                        {% for classe in classes %}
                            <tr>
                                <td>
                                    <div class="school-table-title">
                                        <strong>{{ classe.nom }}</strong>
                                        <small>{{ classe.joursCours ?: 'Jours non renseignés' }}</small>
                                    </div>
                                </td>
                                <td>{{ classe.section.nom }}</td>
                                <td>{{ classe.niveau ? classe.niveau.nom : 'Non défini' }}</td>
                                <td>
                                    {{ classe.langue ? classe.langue|replace({'_':' '})|title : 'Non renseignée' }}
                                    {% if classe.sexe %} · {{ classe.sexe|replace({'_':' '})|title }}{% endif %}
                                </td>
                                <td>
                                    {% include 'components/admin/status_badge.html.twig' with {label: classe.mode ? classe.mode|replace({'_':' '})|title : 'Classe', tone: classe.active ? 'info' : 'neutral'} only %}
                                </td>
                                <td>{{ classe.tarifDefaut ? classe.tarifDefaut|number_format(0, ',', ' ') ~ ' FCFA' : 'Non renseigné' }}</td>
                                <td>
                                    <div class="admin-actions">
                                        <a class="admin-action-button" href="{{ path('school_classe_show', {id: classe.id}) }}">Voir</a>
                                        <a class="admin-action-button" href="{{ path('school_classe_edit', {id: classe.id}) }}">Modifier</a>
                                        <form method="post" action="{{ path('school_classe_delete', {id: classe.id}) }}" onsubmit="return confirm('Supprimer cette classe ?');">
                                            <input type="hidden" name="_token" value="{{ csrf_token('delete_classe_' ~ classe.id) }}">
                                            <button class="admin-action-button admin-action-danger" type="submit">Supprimer</button>
                                        </form>
                                    </div>
                                </td>
                            </tr>
                        {% endfor %}
                        </tbody>
                    </table>
                </div>
            {% endif %}
        </section>
    </div>
{% endblock %}
