This commit updates the CSS for the documentation overlay, consolidating styles for the help button and ensuring it aligns with the existing button styles. The PHP files have been modified to enhance the integration of the documentation trigger within the block headers, allowing for optional documentation links. Additionally, the SQL file has been updated to improve the content of the documentation pages, providing clearer instructions and enhancing user experience.
112 lines
14 KiB
SQL
112 lines
14 KiB
SQL
-- Module documentation MS1 (overlay paginé) — distinct de la table info / info_aide.
|
|
-- Terminologie : doc_mod = module, doc_page = page HTML, doc_anchor = clé d'appel.
|
|
-- Exécuter sur la BD client (inscription).
|
|
|
|
-- Réimport propre (optionnel)
|
|
-- 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';
|
|
|
|
-- ---------------------------------------------------------------------------
|
|
-- doc_mod — registre des modules de documentation
|
|
-- ---------------------------------------------------------------------------
|
|
CREATE TABLE IF NOT EXISTS `doc_mod` (
|
|
`pk_doc_mod` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`doc_mod_clef` varchar(45) NOT NULL,
|
|
`doc_mod_prg` varchar(100) NOT NULL DEFAULT 'global',
|
|
`doc_mod_titre` varchar(255) NOT NULL DEFAULT '',
|
|
`doc_mod_actif` tinyint(1) NOT NULL DEFAULT '1',
|
|
`doc_mod_tri` int(10) unsigned NOT NULL DEFAULT '0',
|
|
`doc_mod_creation` datetime DEFAULT NULL,
|
|
`doc_mod_maj` datetime DEFAULT NULL,
|
|
PRIMARY KEY (`pk_doc_mod`),
|
|
UNIQUE KEY `uk_doc_mod` (`doc_mod_clef`,`doc_mod_prg`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
|
|
|
-- ---------------------------------------------------------------------------
|
|
-- doc_page — pages HTML (équivalent info_texte + info_aide, mais long / riche)
|
|
-- ---------------------------------------------------------------------------
|
|
CREATE TABLE IF NOT EXISTS `doc_page` (
|
|
`pk_doc_page` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`doc_mod_clef` varchar(45) NOT NULL,
|
|
`doc_page_clef` varchar(45) NOT NULL,
|
|
`doc_langue` varchar(2) NOT NULL DEFAULT 'fr',
|
|
`doc_titre` varchar(255) NOT NULL DEFAULT '',
|
|
`doc_sous_titre` varchar(255) NOT NULL DEFAULT '',
|
|
`doc_html` text NOT NULL,
|
|
`doc_prg` varchar(100) NOT NULL DEFAULT 'global',
|
|
`doc_tri` int(10) unsigned NOT NULL DEFAULT '0',
|
|
`doc_actif` tinyint(1) NOT NULL DEFAULT '1',
|
|
`doc_creation` datetime DEFAULT NULL,
|
|
`doc_maj` datetime DEFAULT NULL,
|
|
PRIMARY KEY (`pk_doc_page`),
|
|
UNIQUE KEY `uk_doc_page` (`doc_page_clef`,`doc_langue`,`doc_prg`),
|
|
KEY `idx_doc_mod` (`doc_mod_clef`,`doc_langue`,`doc_prg`,`doc_tri`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
|
|
|
-- ---------------------------------------------------------------------------
|
|
-- doc_anchor — clé d'appel (comme info_clef) → module à ouvrir
|
|
-- ---------------------------------------------------------------------------
|
|
CREATE TABLE IF NOT EXISTS `doc_anchor` (
|
|
`pk_doc_anchor` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`doc_anchor_clef` varchar(45) NOT NULL,
|
|
`doc_mod_clef` varchar(45) NOT NULL,
|
|
`doc_prg` varchar(100) NOT NULL DEFAULT 'global',
|
|
`doc_actif` tinyint(1) NOT NULL DEFAULT '1',
|
|
`doc_creation` datetime DEFAULT NULL,
|
|
PRIMARY KEY (`pk_doc_anchor`),
|
|
UNIQUE KEY `uk_doc_anchor` (`doc_anchor_clef`,`doc_prg`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
|
|
|
-- ---------------------------------------------------------------------------
|
|
-- Données initiales — assignation de dossard (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 — pages du guide (contenu composé depuis les clés info bib_v4_*)
|
|
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', 'Assignation de dossard', 'Vue d''ensemble du module',
|
|
'<article class="ms1-doc-article"><p>Définissez les <strong>séquences de dossards</strong> et assignez les numéros aux participants inscrits sur chaque épreuve.</p><h3>À quoi sert ce bloc ?</h3><p>Ce panneau regroupe tout ce qui touche l''<strong>assignation des dossards</strong> : création des séquences, assignation groupée (batch), assignation automatique à l''inscription et réinitialisation.</p><h3>Workflow recommandé</h3><ol><li>Créer une ou plusieurs <strong>séquences</strong> (numéros de début et de fin).</li><li>Optionnel : activer l''<strong>assignation automatique</strong> pour les nouvelles inscriptions.</li><li>Pour les participants déjà inscrits sans dossard : <strong>Assigner par séquence</strong>, puis <strong>Simuler</strong>, puis <strong>GO</strong>.</li></ol><blockquote>Utilisez toujours <strong>Simuler</strong> avant <strong>GO</strong> pour vérifier le résultat sans modifier la base de données.</blockquote></article>',
|
|
'compte.php', 10, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_sequences', 'fr', 'Séquences de dossards', 'Tableau des séquences',
|
|
'<article class="ms1-doc-article"><p>Chaque ligne du tableau représente une <strong>séquence de dossards</strong> (plage de numéros disponibles pour l''épreuve).</p><h3>Colonnes et actions</h3><table><tr><th>Icône œil</th><td>Voir la grille des dossards de cette séquence (occupés / libres).</td></tr><tr><th>Début</th><td>Premier numéro de la séquence.</td></tr><tr><th>Fin</th><td>Dernier numéro de la séquence.</td></tr><tr><th>OK</th><td>Enregistrer cette séquence après modification.</td></tr><tr><th>Suppr.</th><td>Supprimer la séquence.</td></tr><tr><th>Dernier</th><td>Dernier dossard assigné dans la séquence.</td></tr><tr><th>Utilisé</th><td>Nombre de dossards déjà assignés.</td></tr><tr><th>Dispo</th><td>Dossards encore disponibles dans la séquence.</td></tr></table><h3>+ Ajouter</h3><p>Ajoute une nouvelle séquence de dossards pour cette épreuve. Indiquez le numéro de <strong>début</strong> et de <strong>fin</strong>, puis cliquez <strong>OK</strong>.</p><p>La case à gauche de chaque ligne permet de <strong>sélectionner</strong> la séquence pour l''assignation batch ou l''assignation automatique.</p></article>',
|
|
'compte.php', 20, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_batch', 'fr', 'Assigner par séquence', 'Mode batch — Simuler puis GO',
|
|
'<article class="ms1-doc-article"><p>Le bouton <strong>Assigner par séquence</strong> ouvre le mode batch : il assigne tous les participants <em>sans dossard</em> en une seule opération.</p><h3>Étapes</h3><ol><li><strong>Cochez</strong> une ou plusieurs séquences de dossards.</li><li>Choisissez l''<strong>ordre d''assignation</strong> : critère pour trier les participants avant d''attribuer les dossards (nom, date d''inscription, équipe, etc.).</li><li><strong>Simuler</strong> — affiche qui recevrait quel dossard sans modifier la base de données.</li><li><strong>GO</strong> — lance l''assignation batch pour de vrai.</li></ol><p>Le résumé (disponibles / à assigner / manquants) s''affiche après simulation ou GO.</p><h3>Réinitialiser</h3><p>Retire les dossards déjà assignés pour les séquences concernées. <strong>Attention :</strong> vérifiez l''impact avant de confirmer. Ce bouton n''apparaît que s''il existe déjà des dossards assignés sur l''épreuve.</p></article>',
|
|
'compte.php', 30, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_auto', 'fr', 'Assignation automatique', 'Dossard à chaque nouvelle inscription',
|
|
'<article class="ms1-doc-article"><p><strong>Assignation automatique</strong> : active l''assignation d''un dossard à chaque nouvelle inscription, en utilisant les séquences choisies.</p><h3>Activation</h3><ol><li>Cliquez <strong>Assignation automatique</strong> (ou <strong>Auto — configurer</strong> si déjà actif).</li><li>Cochez les séquences à utiliser pour l''assignation auto.</li><li>Cliquez <strong>Accepter</strong> pour enregistrer la configuration.</li></ol><p>Le badge <strong>Auto actif</strong> confirme que l''assignation automatique est activée pour cette épreuve.</p><h3>Annuler / Désactiver</h3><ul><li><strong>Annuler</strong> — quitte le mode édition sans enregistrer.</li><li><strong>Désactiver l''auto</strong> — désactive l''assignation automatique. Les séquences de dossards restent en place.</li></ul><blockquote>L''auto et le batch peuvent coexister : l''auto gère les nouveaux inscrits ; le batch rattrape les participants sans dossard.</blockquote></article>',
|
|
'compte.php', 40, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_solo', 'fr', 'Épreuve individuelle', 'Participants solo',
|
|
'<article class="ms1-doc-article"><p>Sur une épreuve <strong>individuelle</strong> (solo), chaque participant reçoit son propre numéro de dossard.</p><h3>Ordre d''assignation</h3><p>Lors d''un assignation par séquence, choisissez le critère de tri dans la liste <strong>Ordre d''assignation</strong> : nom de famille, prénom, date d''inscription, date de naissance, etc.</p><p>L''option liée au <strong>nom d''équipe</strong> est masquée sur une épreuve solo — elle n''a pas de sens sans épreuve en équipe.</p><h3>Grille des dossards</h3><p>L''icône <strong>œil</strong> sur une séquence ouvre la grille visuelle. Un numéro peut y être modifié manuellement ; le système vérifie les doublons sur l''événement.</p></article>',
|
|
'compte.php', 50, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_equipe', 'fr', 'Épreuve en équipe', 'Dossards individuels vs 1 équipe = 1 dossard',
|
|
'<article class="ms1-doc-article"><p>Sur une épreuve <strong>en équipe</strong>, choisissez la <strong>méthode d''assignation</strong> dans le panneau de gauche, <em>avant le premier dossard assigné</em>. Le choix est verrouillé ensuite.</p><h3>Dossards individuels</h3><p>Chaque membre de l''équipe reçoit un numéro distinct, comme en solo. L''ordre d''assignation <strong>Nom d''équipe</strong> devient disponible pour grouper l''assignation.</p><h3>1 équipe = 1 dossard</h3><p>Tous les membres d''une équipe partagent le <strong>même numéro</strong>. L''assignation batch traite les équipes, pas chaque personne individuellement.</p><blockquote>Changer de méthode après des dossards assignés nécessite une réinitialisation — planifiez le mode avant le premier GO.</blockquote><p>La grille des dossards (icône œil) regroupe visuellement les membres par équipe pour faciliter la lecture.</p></article>',
|
|
'compte.php', 60, 1, NOW());
|
|
|
|
-- EN — contenu aligné sur les clés info bib_v4_*
|
|
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', 'Bib assignment', 'Module overview',
|
|
'<article class="ms1-doc-article"><p>Define <strong>bib sequences</strong> and assign numbers to registered participants for each race.</p><h3>Recommended workflow</h3><ol><li>Create one or more <strong>sequences</strong> (start and end numbers).</li><li>Optionally enable <strong>automatic assignment</strong> for new registrations.</li><li>For participants already without a bib: <strong>Assign by sequence</strong>, then <strong>Simulate</strong>, then <strong>GO</strong>.</li></ol><blockquote>Always <strong>Simulate</strong> before <strong>GO</strong> to preview without changing the database.</blockquote></article>',
|
|
'compte.php', 10, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_sequences', 'en', 'Bib sequences', 'Sequence table',
|
|
'<article class="ms1-doc-article"><p>Each row is a <strong>bib sequence</strong> (range of numbers for this race).</p><table><tr><th>Eye icon</th><td>View the bib grid for this sequence.</td></tr><tr><th>Start / End</th><td>First and last number in the sequence.</td></tr><tr><th>OK</th><td>Save this sequence.</td></tr><tr><th>Delete</th><td>Remove the sequence.</td></tr><tr><th>Last / Used / Avail.</th><td>Statistics: last assigned bib, count used, count available.</td></tr></table><h3>+ Add</h3><p>Adds a new bib sequence. Enter start and end numbers, then click <strong>OK</strong>.</p></article>',
|
|
'compte.php', 20, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_batch', 'en', 'Assign by sequence', 'Batch mode — Simulate then GO',
|
|
'<article class="ms1-doc-article"><p><strong>Assign by sequence</strong> opens batch mode: assign all participants <em>without a bib</em> in one operation.</p><ol><li>Check one or more sequences.</li><li>Choose <strong>Assignment order</strong> (name, registration date, team, etc.).</li><li><strong>Simulate</strong> — preview without saving.</li><li><strong>GO</strong> — run the batch assignment.</li></ol><p><strong>Reset</strong> removes assigned bibs. Check the impact before confirming.</p></article>',
|
|
'compte.php', 30, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_auto', 'en', 'Automatic assignment', 'Bib on each new registration',
|
|
'<article class="ms1-doc-article"><p><strong>Automatic assignment</strong> assigns a bib on each new registration using the selected sequences.</p><p>Click <strong>Accept</strong> to save. The <strong>Auto on</strong> badge confirms the mode is active.</p><p><strong>Disable auto</strong> turns off automatic assignment but keeps bib sequences.</p></article>',
|
|
'compte.php', 40, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_solo', 'en', 'Individual race', 'Solo participants',
|
|
'<article class="ms1-doc-article"><p>On an <strong>individual</strong> race, each participant gets their own bib number. Team name sort order is hidden on solo races.</p></article>',
|
|
'compte.php', 50, 1, NOW()),
|
|
('bib_assignment', 'bib_doc_equipe', 'en', 'Team race', 'Individual bibs vs one bib per team',
|
|
'<article class="ms1-doc-article"><p>On a <strong>team</strong> race, choose the assignment method <em>before the first bib</em> — then it is locked.</p><ul><li><strong>Individual bibs</strong> — each member gets a number.</li><li><strong>1 team = 1 bib</strong> — all members share the same number.</li></ul></article>',
|
|
'compte.php', 60, 1, NOW());
|