<?php
/**
 * Shared partial — "Fichiers" fieldset (add / student submission mode).
 *
 * Order per spec:
 *   1. Image de couverture (optionnel)
 *   2. Note d'intention (obligatoire)
 *   3. TFE (obligatoire)
 *   4. Annexes éventuelles (optionnel)
 *
 * Variables consumed:
 *   bool $adminMode  — when true, no field is required (admin add/edit mode).
 */
$adminMode = $adminMode ?? false;
?>
<fieldset>
    <legend>Fichiers</legend>

    <?php
    $name = 'couverture';
    $label = 'Image de couverture (optionnel) :';
    $accept = 'image/jpeg,image/png,image/webp';
    $hint = 'JPG, PNG ou WEBP. Format 4:3 recommandé. Max 20 MB.';
    include APP_ROOT . '/templates/partials/form/file-field.php';
    ?>

    <?php
    $name = 'note_intention';
    $label = 'Note d\'intention :';
    $accept ='.pdf';
    $hint = 'Format PDF uniquement.';
    $required = !$adminMode;
    include APP_ROOT . '/templates/partials/form/file-field.php';
    ?>

    <!-- TFE files — multi-file, sortable, with per-file labels -->
    <div class="admin-form-group admin-files-fieldgroup">
        <label>TFE (obligatoire) :</label>
        <div class="admin-file-input">
            <input type="file" id="tfe-files-input"
                   name="files[]" multiple
                   accept=".pdf,.jpg,.jpeg,.png,.gif,.webp,.mp4,.webm,.mov,.ogv,.mp3,.ogg,.oga,.wav,.flac,.aac,.m4a,.vtt"
                   class="tfe-file-picker">
            <small class="admin-file-hint">
                Types acceptés : PDF · JPG/PNG/GIF/WEBP · MP4/WebM/MOV (vidéo) · MP3/OGG/WAV/FLAC (audio) · ZIP/TAR (archives). Max 500 MB par fichier.
                Les fichiers <code>.vtt</code> sont des sous-titres et seront associés automatiquement à la vidéo précédente.
            </small>

            <!-- Sortable file queue — populated by JS -->
            <ul id="tfe-file-queue" class="tfe-file-queue sortable-list" aria-label="Fichiers sélectionnés (réordonnable)">
                <!-- Items injected by file-upload-queue.js -->
            </ul>
            <p id="tfe-file-queue-empty" class="tfe-queue-empty">Aucun fichier sélectionné.</p>
        </div>
    </div>

    <?php
    $name = 'annexes';
    $label = 'Annexes éventuelles (optionnel) :';
    $accept = '.pdf,.zip,.tar,.gz';
    $hint = 'PDF ou archives ZIP/TAR.';
    $multiple = true;
    include APP_ROOT . '/templates/partials/form/file-field.php';
    ?>
</fieldset>
