<?php
use App\Core\Csrf;
use App\Core\Permission;

$isIndividual=
    ($group['type_groupe'] ?? '')==='individuel';
?>
<link rel="stylesheet"
href="/public/assets/css/cda-group-participants.css">

<section class="group-participants-hero">
<div>
<span class="page-kicker">Organisation pédagogique</span>
<h2><?= htmlspecialchars((string)$group['libelle']) ?></h2>
<p>
<?= htmlspecialchars((string)$group['atelier_libelle']) ?>
·
<?= htmlspecialchars((string)$group['code']) ?>
</p>
</div>

<a class="button button-secondary"
href="/public/groupes">
Retour aux groupes
</a>
</section>

<section class="participant-metrics">
<div>
<strong><?= (int)$metrics['active'] ?></strong>
<span>participants actifs</span>
</div>

<div>
<strong>
<?= $metrics['capacity']>0
    ? (int)$metrics['capacity']
    : '∞' ?>
</strong>
<span>capacité</span>
</div>

<div>
<strong>
<?= $metrics['remaining']===null
    ? '∞'
    : (int)$metrics['remaining'] ?>
</strong>
<span>places restantes</span>
</div>

<div>
<strong><?= (int)$metrics['waiting'] ?></strong>
<span>en attente</span>
</div>
</section>

<?php if(Permission::can('groupes.participants.assign')): ?>
<section class="participant-card">
<header>
<div>
<h3>Affecter une inscription</h3>
<p>
Seules les inscriptions validées du cours sont proposées.
</p>
</div>
</header>

<form method="post"
action="/public/groupes/participants/affecter"
class="participant-assignment-form">
<?= Csrf::field() ?>
<input type="hidden"
name="groupe_id"
value="<?= (int)$group['id'] ?>">

<label class="wide">
<span>Inscription *</span>
<select required name="inscription_id">
<option value="">Choisir une personne inscrite</option>
<?php foreach($eligible as $registration): ?>
<option value="<?= (int)$registration['id'] ?>">
<?= htmlspecialchars(
    (string)$registration['participant_nom']
) ?>
—
<?= htmlspecialchars(
    (string)$registration['statut']
) ?>
</option>
<?php endforeach; ?>
</select>
</label>

<label>
<span>Date d’entrée</span>
<input type="date"
name="date_entree"
value="<?= date('Y-m-d') ?>">
</label>

<label>
<span>Affectation</span>
<select name="statut">
<option value="actif">Participant actif</option>
<option value="liste_attente">Liste d’attente</option>
</select>
</label>

<?php if($isIndividual): ?>
<label>
<span>Début du sous-créneau</span>
<input type="time"
name="heure_debut">
</label>

<label>
<span>Fin du sous-créneau</span>
<input type="time"
name="heure_fin">
</label>
<?php endif; ?>

<label class="wide">
<span>Observation</span>
<input name="observations"
placeholder="Information utile pour l’affectation">
</label>

<button class="button button-primary">
Affecter au groupe
</button>
</form>
</section>
<?php endif; ?>

<section class="participant-card">
<header>
<div>
<h3>Participants affectés</h3>
<p>
Historique conservé en cas de sortie ou changement de groupe.
</p>
</div>
</header>

<div class="participant-list">
<?php if(!$participants): ?>
<div class="participant-empty">
Aucun participant affecté à ce groupe.
</div>
<?php endif; ?>

<?php foreach($participants as $participant): ?>
<article class="status-<?= htmlspecialchars(
    (string)$participant['statut']
) ?>">
<div class="participant-avatar">
<?= htmlspecialchars(
    mb_strtoupper(
        mb_substr(
            trim((string)$participant['participant_nom']),
            0,
            2
        )
    )
) ?>
</div>

<div class="participant-main">
<strong>
<?= htmlspecialchars(
    (string)$participant['participant_nom']
) ?>
</strong>

<small>
Inscription
#<?= (int)$participant['inscription_id'] ?>
·
entrée le
<?= htmlspecialchars(date(
    'd/m/Y',
    strtotime((string)$participant['date_entree'])
)) ?>
</small>

<?php if(
    $participant['heure_debut_individuelle'] &&
    $participant['heure_fin_individuelle']
): ?>
<span class="slot-badge">
<?= htmlspecialchars(substr(
    (string)$participant['heure_debut_individuelle'],
    0,
    5
)) ?>
–
<?= htmlspecialchars(substr(
    (string)$participant['heure_fin_individuelle'],
    0,
    5
)) ?>
</span>
<?php endif; ?>
</div>

<span class="participant-status">
<?= htmlspecialchars((string)$participant['statut']) ?>
</span>

<?php if(
    Permission::can('groupes.participants.remove') &&
    in_array(
        $participant['statut'],
        ['actif','liste_attente','suspendu'],
        true
    )
): ?>
<form method="post"
action="/public/groupes/participants/retirer"
onsubmit="return confirm('Retirer cette personne du groupe ?');">
<?= Csrf::field() ?>
<input type="hidden"
name="id"
value="<?= (int)$participant['id'] ?>">

<input type="hidden"
name="groupe_id"
value="<?= (int)$group['id'] ?>">

<input type="hidden"
name="motif"
value="Retrait depuis la fiche groupe">

<button>Retirer</button>
</form>
<?php endif; ?>
</article>
<?php endforeach; ?>
</div>
</section>
