diff --git a/css/style.css b/css/style.css index 7f4bcdd..28fb03f 100644 --- a/css/style.css +++ b/css/style.css @@ -1078,7 +1078,7 @@ ul.ms1-menu-compte li a:hover, ul.ms1-menu-compte li a:active { margin-top:10px; } -#module-bib .bib-workspace-nav{ +#module-bib .bib-workspace-bar{ display:flex; align-items:stretch; gap:4px; @@ -1089,6 +1089,12 @@ ul.ms1-menu-compte li a:hover, ul.ms1-menu-compte li a:active { overflow-x:auto; } +#module-bib .bib-workspace-nav{ + display:flex; + align-items:stretch; + gap:4px; +} + #module-bib .bib-workspace-tab{ display:inline-flex; align-items:center; @@ -1107,6 +1113,41 @@ ul.ms1-menu-compte li a:hover, ul.ms1-menu-compte li a:active { cursor:pointer; } +/* MSIN-4470 — L'impression PDF reste accessible à droite des espaces principaux. */ +#module-bib .bib-workspace-action{ + display:flex; + flex:0 0 auto; + margin-left:auto; +} + +#module-bib .bib-workspace-action .bib-tool-btn{ + width:auto; + min-height:42px; + padding:8px 16px; + border-width:0; + background:transparent; + color:#495057; + font-size:13px; + font-weight:600; + line-height:1.25; +} + +#module-bib .bib-workspace-action .bib-tool-btn:not(.is-active):hover, +#module-bib .bib-workspace-action .bib-tool-btn:not(.is-active):focus{ + background:#e8f0f8; + color:#1e4a9e; + box-shadow:none; +} + +#module-bib .bib-workspace-action .bib-tool-btn.is-active, +#module-bib .bib-workspace-action .bib-tool-btn.is-active:hover, +#module-bib .bib-workspace-action .bib-tool-btn.is-active:focus{ + background:#2f5fd0; + color:#fff; + border-color:transparent; + box-shadow:none; +} + #module-bib .bib-workspace-tab:hover, #module-bib .bib-workspace-tab:focus{ background:#e8f0f8; @@ -1655,6 +1696,7 @@ ul.ms1-menu-compte li a:hover, ul.ms1-menu-compte li a:active { } @media (max-width:768px){ + #module-bib .bib-workspace-bar, #module-bib .bib-workspace-nav{ align-items:stretch; } @@ -2103,13 +2145,18 @@ ul.ms1-menu-compte li a:hover, ul.ms1-menu-compte li a:active { .bib-race-summary__group h4{ margin:0 0 5px; - color:#6c757d; - font-size:10px; - font-weight:700; - letter-spacing:.03em; + color:#1e3a6e; + font-size:11px; + font-weight:800; + letter-spacing:.06em; text-transform:uppercase; } +/* MSIN-4470 — Accentue légèrement les deux repères principaux de chaque épreuve. */ +.bib-race-summary__group--bibs h4{ + color:#1e4fbf; +} + .bib-race-summary__stats{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); diff --git a/js/v2/bib-assignments.js b/js/v2/bib-assignments.js index f2c0e7f..5430b74 100644 --- a/js/v2/bib-assignments.js +++ b/js/v2/bib-assignments.js @@ -540,9 +540,14 @@ if (toolId === 'event_config') { return 'settings'; } - if (toolId === 'global_batch' || toolId === 'dist_print') { + if (toolId === 'global_batch') { return 'operations'; } + // MSIN-4470 — L'action PDF est globale et s'ouvre depuis la barre supérieure + // sans déplacer l'utilisateur vers un autre espace de travail. + if (toolId === 'dist_print') { + return bibActiveWorkspace; + } return 'preparation'; } @@ -1983,6 +1988,15 @@ bibOpenTool(toolBtn.getAttribute('data-bib-tool')); }); + // MSIN-4469 — Le téléchargement part dans un nouvel onglet; + // l’écran principal revient aussitôt à Quantités et assignation. + moduleBib.addEventListener('submit', function (e) { + var productionForm = e.target.closest('.bib-production-return-preparation-form'); + if (productionForm && moduleBib.contains(productionForm)) { + bibSetWorkspace('preparation'); + } + }); + moduleBib.addEventListener('click', function (e) { var workspaceTab = e.target.closest('.bib-workspace-tab'); if (workspaceTab && moduleBib.contains(workspaceTab)) { diff --git a/php/inc_fx_bib_production.php b/php/inc_fx_bib_production.php index cbb3713..a9ef2b1 100644 --- a/php/inc_fx_bib_production.php +++ b/php/inc_fx_bib_production.php @@ -160,6 +160,8 @@ function fxBibProductionCollectSnapshot($intEveId, $strLangue = 'fr') { continue; } + // MSIN-4469 — La commande porte sur toute la séquence à imprimer, + // même lorsqu’aucun coureur ni aucun dossard assigné ne s’y trouve encore. $tabRangesRaw = $objDatabase->fxGetResults( "SELECT epr_bib_id, epr_bib_start, epr_bib_finish FROM inscriptions_epreuves_bib diff --git a/php/inc_fx_promoteur.php b/php/inc_fx_promoteur.php index 9c6023d..559acd2 100644 --- a/php/inc_fx_promoteur.php +++ b/php/inc_fx_promoteur.php @@ -5048,7 +5048,8 @@ function renderBibProductionPreview(array $tabEpreuves, $strLangue = 'fr') {
-