diff --git a/css/ms1-doc.css b/css/ms1-doc.css index cb097c6..4deb0e7 100644 --- a/css/ms1-doc.css +++ b/css/ms1-doc.css @@ -191,6 +191,45 @@ body.ms1-doc-open { font-weight: 600; } +/* Bloc pédagogique par bouton / contrôle */ +.ms1-doc-bouton { + margin: 16px 0; + padding: 12px 14px; + border: 1px solid #e9ecef; + border-radius: 6px; + background: #fafbfc; +} + +.ms1-doc-bouton h3, +.ms1-doc-bouton h4 { + margin: 0 0 10px; + font-size: 0.92rem; + font-weight: 600; + color: #2f5fd0; +} + +.ms1-doc-bouton dl { + margin: 0; +} + +.ms1-doc-bouton dt { + font-size: 0.8rem; + font-weight: 600; + color: #495057; + margin-top: 8px; +} + +.ms1-doc-bouton dt:first-child { + margin-top: 0; +} + +.ms1-doc-bouton dd { + margin: 2px 0 0; + font-size: 0.88rem; + line-height: 1.5; + color: #212529; +} + /* Pied — navigation */ .ms1-doc-footer { padding: 10px 14px 12px; diff --git a/sql/MSIN-doc-bib_assignment-complet.sql b/sql/MSIN-doc-bib_assignment-complet.sql new file mode 100644 index 0000000..8cf0630 --- /dev/null +++ b/sql/MSIN-doc-bib_assignment-complet.sql @@ -0,0 +1,300 @@ +-- ============================================================================= +-- MSIN — Documentation complète : Assignation de dossard (module bib_assignment) +-- ============================================================================= +-- Structure pédagogique : +-- Page 1 — C'est quoi l'assignation de dossard ? +-- Page 2 — C'est quoi une séquence de dossard ? (+ tableau) +-- Page 3 — Boutons assignation groupée (un bloc « C'est quoi / Quand / Comment » par bouton) +-- Page 4 — Assignation automatique (concept + chaque bouton) +-- Page 5 — Épreuve solo +-- Page 6 — Épreuve en équipe +-- +-- Gabarit HTML pour chaque bouton (section.ms1-doc-bouton) : +--
C'est quoi ?
Quand l'utiliser ?
Comment ?
À noter
+-- +-- Prérequis : tables doc_mod, doc_page, doc_anchor (MSIN-doc-module.sql). +-- Exécuter sur la BD client (inscription). +-- ============================================================================= + +DELETE FROM `doc_page` WHERE `doc_mod_clef` = 'bib_assignment'; +DELETE FROM `doc_anchor` WHERE `doc_mod_clef` = 'bib_assignment'; +DELETE FROM `doc_mod` WHERE `doc_mod_clef` = 'bib_assignment'; + +INSERT INTO `doc_mod` (`doc_mod_clef`, `doc_mod_prg`, `doc_mod_titre`, `doc_mod_actif`, `doc_mod_tri`, `doc_mod_creation`) +VALUES ('bib_assignment', 'compte.php', 'Assignation de dossard', 1, 10, NOW()); + +INSERT INTO `doc_anchor` (`doc_anchor_clef`, `doc_mod_clef`, `doc_prg`, `doc_actif`, `doc_creation`) +VALUES ('bib_v4_assign_doc', 'bib_assignment', 'compte.php', 1, NOW()); + +-- ----------------------------------------------------------------------------- +-- FR +-- ----------------------------------------------------------------------------- + +INSERT INTO `doc_page` (`doc_mod_clef`, `doc_page_clef`, `doc_langue`, `doc_titre`, `doc_sous_titre`, `doc_html`, `doc_prg`, `doc_tri`, `doc_actif`, `doc_creation`) VALUES +('bib_assignment', 'bib_doc_overview', 'fr', 'C''est quoi l''assignation de dossard ?', 'Le rôle de ce panneau', +'
+

L''assignation de dossard, c''est attribuer un numéro de dossard à chaque participant inscrit sur une épreuve — le numéro qu''il portera le jour de l''événement.

+

Pourquoi ce panneau existe

+

Sur chaque épreuve, les inscriptions arrivent au fil du temps. Ce bloc permet au promoteur de :

+ +

Ordre logique (pas l''ordre des boutons sur l''écran)

+
    +
  1. Comprendre ce qu''est une séquence de dossard (page 2).
  2. +
  3. Créer vos séquences dans le tableau (+ Ajouter, Début, Fin, OK).
  4. +
  5. Optionnel : activer l''assignation automatique (page 4).
  6. +
  7. Pour les inscrits déjà sans numéro : Assigner par séquenceSimulerGO (page 3).
  8. +
+

Deux types d''aide sur l''écran

+ +
', +'compte.php', 10, 1, NOW()), + +('bib_assignment', 'bib_doc_sequences', 'fr', 'C''est quoi une séquence de dossard ?', 'Concept puis le tableau', +'
+

Une séquence de dossard, c''est quoi ?

+

Une séquence est une plage de numéros consécutifs réservée à une épreuve.

+

Exemple : séquence 1 à 500 → les dossards 1, 2, 3 … jusqu''à 500 peuvent être assignés. Quand le 250 est pris, le système passe au suivant libre dans la plage.

+

Vous pouvez avoir plusieurs séquences sur la même épreuve (ex. 1–500 pour le public, 1000–1100 pour les bénévoles).

+

La case à cocher à gauche de chaque ligne

+
+
C''est quoi ?
Elle sélectionne cette séquence pour une opération (batch ou auto).
+
Quand l''utiliser ?
Avant Assigner par séquence ou avant Accepter l''assignation automatique.
+
Comment ?
Cochez une ou plusieurs lignes. L''ordre des lignes peut influencer l''ordre de priorité des plages.
+
+

Le tableau — chaque colonne

+
+

Icône œil

+
C''est quoi ?
Grille visuelle : numéros libres et occupés dans cette séquence.
+
Quand ?
Vérifier l''état d''une plage ou corriger un numéro manuellement.
+
+
+

Début / Fin

+
C''est quoi ?
Premier et dernier numéro de la plage.
+
Comment ?
Modifiez les valeurs puis cliquez OK sur la ligne pour enregistrer.
+
+
+

OK (coche verte)

+
C''est quoi ?
Enregistre la séquence (nouvelle ligne ou modification Début/Fin).
+
À noter
Obligatoire après + Ajouter ou après changer les bornes.
+
+
+

Suppr.

+
C''est quoi ?
Retire la séquence de la configuration.
+
À noter
Prudence si des dossards de cette plage sont déjà assignés.
+
+
+

Dernier / Utilisé / Dispo

+
C''est quoi ?
Dernier = dernier numéro attribué ; Utilisé = combien pris ; Dispo = combien restent.
+
+
+

+ Ajouter

+
C''est quoi ?
Ajoute une nouvelle ligne de séquence vide.
+
Comment ?
+ Ajouter → remplir Début et Fin → OK sur la ligne.
+
+
', +'compte.php', 20, 1, NOW()), + +('bib_assignment', 'bib_doc_batch', 'fr', 'Boutons : assignation groupée', 'Assigner par séquence, Simuler, GO…', +'
+

Ces boutons servent à assigner des dossards en une seule opération à tous les participants qui n''ont pas encore un numéro. Chaque bouton ci-dessous suit le même gabarit d''explication.

+ +
+

Bouton « Assigner par séquence »

+
+
C''est quoi ?
+
Ouvre le mode batch : panneau avec ordre d''assignation, Simuler et GO.
+
Quand l''utiliser ?
+
Quand des participants sont inscrits mais sans dossard, et que vous voulez les traiter tous d''un coup.
+
Comment ?
+
Cliquez le bouton → cochez des séquences dans le tableau → choisissez l''ordre → Simuler → GO.
+
À noter
+
Cliqué une deuxième fois, le libellé devient Annuler : ferme le panneau batch sans assigner.
+
+
+ +
+

Liste « Ordre d''assignation »

+
+
C''est quoi ?
+
Indique dans quel ordre trier les participants avant de leur donner un numéro.
+
Quand l''utiliser ?
+
Toujours en mode batch, avant Simuler ou GO.
+
Comment ?
+
Choisissez dans la liste : nom de famille, prénom, date d''inscription, nom d''équipe (épreuve équipe), etc.
+
À noter
+
Sur une épreuve solo, l''option « nom d''équipe » n''apparaît pas.
+
+
+ +
+

Bouton « Simuler »

+
+
C''est quoi ?
+
Affiche qui recevrait quel dossard si vous lanciez l''assignation.
+
Quand l''utiliser ?
+
Toujours avant GO — pour vérifier sans risque.
+
Comment ?
+
Séquences cochées + ordre choisi → cliquez Simuler → lisez le résumé (disponibles / à assigner / manquants).
+
À noter
+
Aucune modification en base de données : c''est une prévisualisation.
+
+
+ +
+

Bouton « GO »

+
+
C''est quoi ?
+
Exécute l''assignation batch pour de vrai.
+
Quand l''utiliser ?
+
Quand la simulation vous convient.
+
Comment ?
+
Après Simuler (recommandé) → GO. Les participants sans dossard reçoivent un numéro.
+
À noter
+
Action réelle : les numéros sont enregistrés. Pas de retour automatique — Réinitialiser si besoin.
+
+
+ +
+

Bouton « Réinitialiser » (rouge)

+
+
C''est quoi ?
+
Retire les dossards déjà assignés sur l''épreuve.
+
Quand l''utiliser ?
+
Recommencer une assignation, corriger une erreur de stratégie — avec prudence.
+
À noter
+
Visible seulement s''il existe déjà au moins un dossard sur l''épreuve. Vérifiez l''impact avant de confirmer.
+
+
+
', +'compte.php', 30, 1, NOW()), + +('bib_assignment', 'bib_doc_auto', 'fr', 'Assignation automatique', 'Concept et chaque bouton', +'
+

L''assignation automatique, c''est quoi ?

+

Dès qu''un nouveau participant s''inscrit, le système lui attribue tout seul le prochain dossard libre dans les séquences que vous avez cochées — sans repasser par Simuler / GO.

+ +
+

Bouton « Assignation automatique » / « Auto — configurer »

+
+
C''est quoi ?
+
Gris = inactive. Vert « Auto — configurer » = déjà active, vous modifiez les séquences utilisées.
+
Quand ?
+
Pendant la période d''inscription, si vous voulez des numéros immédiats à l''inscription.
+
Comment ?
+
Cliquez → cochez les séquences → Accepter.
+
+
+ +
+

Badge « Auto actif »

+
+
C''est quoi ?
+
Indicateur vert : l''auto tourne pour cette épreuve.
+
+
+ +
+

Bouton « Accepter »

+
+
C''est quoi ?
+
Enregistre la configuration auto (quelles séquences sont utilisées).
+
À noter
+
Les séquences doivent être cochées avant Accepter.
+
+
+ +
+

Bouton « Annuler » (auto)

+
+
C''est quoi ?
+
Ferme le mode édition auto sans sauver les changements de coches.
+
+
+ +
+

Bouton « Désactiver l''auto »

+
+
C''est quoi ?
+
Stoppe l''assignation automatique.
+
À noter
+
Les séquences restent ; les dossards déjà donnés ne sont pas effacés.
+
+
+
', +'compte.php', 40, 1, NOW()), + +('bib_assignment', 'bib_doc_solo', 'fr', 'Épreuve individuelle (solo)', 'C''est quoi et impact sur les boutons', +'
+

C''est quoi une épreuve solo ?

+

Chaque participant court (ou participe) seul : un inscrit = une personne = un dossard.

+

Impact sur les boutons

+ +
', +'compte.php', 50, 1, NOW()), + +('bib_assignment', 'bib_doc_equipe', 'fr', 'Épreuve en équipe', 'Méthode d''assignation', +'
+

C''est quoi une épreuve en équipe ?

+

Les participants s''inscrivent en équipe. Le nombre de dossards à assigner dépend de la méthode choisie à gauche.

+ +
+

« Dossards individuels »

+
+
C''est quoi ?
+
Chaque membre a son propre numéro, comme en solo.
+
Quand ?
+
Chaque coureur doit avoir un dossard distinct sur la ligne de départ.
+
À noter
+
L''ordre « Nom d''équipe » est disponible dans le batch.
+
+
+ +
+

« 1 équipe = 1 dossard »

+
+
C''est quoi ?
+
Tous les membres d''une équipe partagent le même numéro.
+
Quand ?
+
Le numéro identifie l''équipe, pas chaque personne.
+
À noter
+
Le batch assigne par équipe. Choix verrouillé après le premier dossard assigné.
+
+
+
', +'compte.php', 60, 1, NOW()); + +-- ----------------------------------------------------------------------------- +-- EN (same pedagogical structure) +-- ----------------------------------------------------------------------------- + +INSERT INTO `doc_page` (`doc_mod_clef`, `doc_page_clef`, `doc_langue`, `doc_titre`, `doc_sous_titre`, `doc_html`, `doc_prg`, `doc_tri`, `doc_actif`, `doc_creation`) VALUES +('bib_assignment', 'bib_doc_overview', 'en', 'What is bib assignment?', 'Purpose of this panel', +'

Bib assignment means giving each registered participant a bib number for race day.

This panel lets you define available numbers (sequences), assign in batch, or assign automatically on registration.

', +'compte.php', 10, 1, NOW()), +('bib_assignment', 'bib_doc_sequences', 'en', 'What is a bib sequence?', 'Concept then the table', +'

A sequence is a range of consecutive numbers (e.g. 1–500). Multiple sequences can exist per race.

Use + Add, set Start/End, click OK. Check rows for batch or auto.

', +'compte.php', 20, 1, NOW()), +('bib_assignment', 'bib_doc_batch', 'en', 'Buttons: batch assignment', 'Assign by sequence, Simulate, GO…', +'

Each button explained with: What is it? When? How? Notes.

Assign by sequence

What is it?
Opens batch mode.
How?
Check sequences → order → Simulate → GO.

Simulate

What is it?
Preview without saving.

GO

What is it?
Runs assignment for real.
', +'compte.php', 30, 1, NOW()), +('bib_assignment', 'bib_doc_auto', 'en', 'Automatic assignment', 'Concept and buttons', +'

Auto assigns a bib on each new registration from checked sequences.

', +'compte.php', 40, 1, NOW()), +('bib_assignment', 'bib_doc_solo', 'en', 'Individual race', 'Solo impact on buttons', +'

One participant = one bib. No team sort order.

', +'compte.php', 50, 1, NOW()), +('bib_assignment', 'bib_doc_equipe', 'en', 'Team race', 'Assignment method', +'

Individual bibs vs 1 team = 1 bib. Choose before first assignment.

', +'compte.php', 60, 1, NOW());