MSIN-4475 — Refactor CSS for improved layout and responsiveness in assignment modes. Update JavaScript to enable immediate tool display without tile clicks, and adjust PHP for seamless workspace transitions. Increment version code to 4.72.867.

This commit is contained in:
2026-07-22 14:45:33 -04:00
parent 162419069b
commit 0a19621949
4 changed files with 76 additions and 44 deletions

View File

@ -2605,15 +2605,11 @@ ul.ms1-menu-compte li a:hover, ul.ms1-menu-compte li a:active {
.epr-block-assign .bib-container{
width:100%;
min-width:0;
/* MSIN-4475 — filet mobile étroit seulement ; plus de min-width 1100px (slider inutile). */
overflow-x:auto;
-webkit-overflow-scrolling:touch;
}
.epr-block-assign .bib-container .epr-line{
/* MSIN-4475 — place pour le badge auto en fin de ligne. */
min-width:1100px;
}
.epr-line-header{
background:#fff3cd;
font-weight:700;
@ -2869,11 +2865,16 @@ ul.ms1-menu-compte li a:hover, ul.ms1-menu-compte li a:active {
font-weight:600;
line-height:1.2;
padding:0.35em 0.5em;
white-space:nowrap;
/* MSIN-4475 — peut passer sur 2 lignes si la colonne restante est étroite. */
white-space:normal;
}
.bib-auto-badge--row{
display:inline-block;
display:inline-flex;
align-items:center;
flex-wrap:wrap;
gap:2px;
max-width:100%;
}
.bib-container.batch-mode .bib-auto-badge--row{
@ -3215,22 +3216,22 @@ a.ms1-trad-link.btn-aide-trad{
/* MSIN-4379 / MSIN-4469 — cadenas utilisateur + impression + view/OK/stats. */
/* MSIN-4429 — colonnes Début | Qté | ou | Fin (alignées sur l'en-tête). */
/* MSIN-4475 — dernière colonne assez large pour le badge « Assignation automatique ». */
/* MSIN-4475 — grille compacte (~640px min) pour tenir dans le wrapper page sans slider. */
.epr-line{
display:grid;
grid-template-columns:
86px
86px
42px
minmax(72px, 88px)
minmax(72px, 88px)
24px
minmax(72px, 88px)
minmax(72px, 88px)
48px
minmax(164px, 180px)
minmax(150px, 170px);
gap:8px;
minmax(70px, 78px)
36px
minmax(60px, 72px)
minmax(60px, 72px)
20px
minmax(60px, 72px)
minmax(48px, 56px)
36px
minmax(140px, 152px)
minmax(0, 1fr);
gap:6px;
align-items:center;
width:100%;
min-width:0;
@ -3238,17 +3239,17 @@ a.ms1-trad-link.btn-aide-trad{
.bib-container.batch-mode .epr-line{
grid-template-columns:
86px
86px
42px
minmax(72px, 88px)
minmax(72px, 88px)
24px
minmax(72px, 88px)
minmax(72px, 88px)
48px
minmax(164px, 180px)
32px;
minmax(70px, 78px)
36px
minmax(60px, 72px)
minmax(60px, 72px)
20px
minmax(60px, 72px)
minmax(48px, 56px)
36px
minmax(140px, 152px)
28px;
}
.epr-col-lock{
@ -3414,7 +3415,7 @@ a.ms1-trad-link.btn-aide-trad{
.epr-col-stats{
display:grid;
grid-template-columns:56px 48px 48px;
grid-template-columns:minmax(44px, 52px) minmax(40px, 48px) minmax(40px, 48px);
gap:4px;
align-items:center;
justify-content:start;
@ -3441,8 +3442,8 @@ a.ms1-trad-link.btn-aide-trad{
}
.epr-col-batch{
/* MSIN-4475 — ne plus couper le badge auto (flex-end + overflow masquait « Assignation »). */
overflow:visible;
/* MSIN-4475 — badge auto dans la colonne fluide restante (pas de min-width forcé). */
overflow:hidden;
min-width:0;
display:flex;
align-items:center;

View File

@ -534,6 +534,14 @@
if (races) {
races.classList.toggle('bib-ui-hidden', workspaceId !== 'preparation');
}
// MSIN-4475 — Modes d'assignation : afficher les choix tout de suite (sans clic tuile).
if (workspaceId === 'operations' && options.keepTool !== true) {
var autoTool = panel.getAttribute('data-bib-auto-tool');
if (autoTool) {
bibOpenTool(autoTool);
}
}
}
function bibWorkspaceForTool(toolId) {
@ -630,8 +638,17 @@
}
var btn = moduleBib.querySelector('.bib-tool-btn[data-bib-tool="' + toolId + '"]');
titleEl.textContent = btn
? (btn.getAttribute('data-bib-tool-label') || '')
if (btn) {
titleEl.textContent = btn.getAttribute('data-bib-tool-label') || '';
return;
}
// MSIN-4475 — Titre depuis le panneau (outil ouvert auto, sans tuile).
var autoPanel = moduleBib.querySelector(
'[data-bib-workspace-panel][data-bib-auto-tool="' + toolId + '"]'
);
titleEl.textContent = autoPanel
? (autoPanel.getAttribute('data-bib-auto-tool-label') || '')
: '';
}
@ -654,11 +671,13 @@
defaultSlot.parentNode.insertBefore(detail, defaultSlot.nextSibling);
}
function bibCloseTool() {
function bibCloseTool(options) {
options = options || {};
if (!bibActiveTool) {
return;
}
var closedTool = bibActiveTool;
bibRestoreToolContent(bibActiveTool);
bibInvalidateToolSlot(bibActiveTool);
bibActiveTool = null;
@ -675,6 +694,13 @@
detail.classList.add('bib-ui-hidden');
}
bibPositionToolDetail(null);
// MSIN-4475 — Fermer les modes (plus de tuile) ramène à la préparation.
if (options.returnToPreparation === true
&& closedTool === 'global_batch'
&& bibActiveWorkspace === 'operations') {
bibSetWorkspace('preparation', { keepTool: true });
}
}
function bibSyncToolNavBadges(toolId) {
@ -2037,7 +2063,7 @@
if (e.target.closest('.bib-tool-detail__close')) {
e.preventDefault();
bibCloseTool();
bibCloseTool({ returnToPreparation: true });
return;
}

View File

@ -5165,7 +5165,7 @@ function renderBibProductionPreview(array $tabEpreuves, $strLangue = 'fr') {
}
/**
* MSIN-4440 / MSIN-4467 / MSIN-4470 — Espaces principaux + outils et panneau de détail unique.
* MSIN-4440 / MSIN-4467 / MSIN-4470 / MSIN-4475 — Espaces principaux + outils et panneau de détail unique.
*/
function renderBibToolNav($int_eve_id, $tabEpreuves, $strLangue = 'fr') {
$int_eve_id = (int)$int_eve_id;
@ -5206,15 +5206,20 @@ function renderBibToolNav($int_eve_id, $tabEpreuves, $strLangue = 'fr') {
<?php echo renderBibProductionPreview($tabEpreuves, $strLangue); ?>
</section>
<section class="bib-workspace-panel bib-ui-hidden" data-bib-workspace-panel="operations">
<?php
// MSIN-4475 — Pas de tuile intermédiaire : les modes s'ouvrent dès l'entrée dans l'onglet.
$blnOpsAutoGlobal = fxBibGlobalBatchToolIsAvailable($int_eve_id, $tabEpreuves);
$strOpsAutoLabel = $blnOpsAutoGlobal ? fxBibTexte('bib_v4_global_batch_title', 0) : '';
?>
<section class="bib-workspace-panel bib-ui-hidden"
data-bib-workspace-panel="operations"
<?php if ($blnOpsAutoGlobal) { ?>
data-bib-auto-tool="global_batch"
data-bib-auto-tool-label="<?php echo fxBibEsc($strOpsAutoLabel); ?>"
<?php } ?>>
<div class="bib-workspace-panel-heading">
<p><?php fxBibTexteTrad('bib_v5_modes_intro', 1); ?></p>
</div>
<nav class="bib-tool-nav bib-tool-nav--operations" aria-label="<?php echo fxBibEsc(fxBibTexte('bib_v5_workspace_operations', 0)); ?>">
<?php if (fxBibGlobalBatchToolIsAvailable($int_eve_id, $tabEpreuves)) {
echo renderBibToolNavBtn('global_batch', 'bib_v4_global_batch_title');
} ?>
</nav>
</section>
<section class="bib-workspace-panel bib-ui-hidden" data-bib-workspace-panel="settings">

View File

@ -7,7 +7,7 @@
* Constantes *
*
**************/
define('_VERSION_CODE', '4.72.865'); // MSIN-4419crayon Info hint refund cancel
define('_VERSION_CODE', '4.72.867'); // MSIN-4475modes assignation sans clic tuile
define('_DATE_CODE', '2026-07-22');
//MSIN-4290
define('QR_SECRET_KEY', 'ms1_qr_2026_cle_secrete_longue_et_fixe');