From ae0ba97b712c4473fec761677d26ef20ca3e85c6 Mon Sep 17 00:00:00 2001 From: Fadi-farhat Date: Wed, 7 Jan 2026 20:09:21 +0100 Subject: [PATCH] =?UTF-8?q?feat(Issue=20#15):=20ajout=20affichage=20d?= =?UTF-8?q?=C3=A9taill=C3=A9=20des=20questions=20s=C3=A9lectionn=C3=A9es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- actions/creerExamen.js | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/actions/creerExamen.js b/actions/creerExamen.js index 9c06c67..a031cc9 100644 --- a/actions/creerExamen.js +++ b/actions/creerExamen.js @@ -212,9 +212,38 @@ export default async function creerExamen(rl = null) { } } - console.log(`\nNombre de questions sélectionnées : ${selectedBlocks.length}`); + // ✅ CORRECTION Issue #15 - Affichage détaillé de la sélection + function displaySelection(blocks) { + console.log('\n=== SÉLECTION ACTUELLE ==='); + console.log(`Total : ${blocks.length}/20 questions\n`); + + if (blocks.length > 0) { + console.log('Questions sélectionnées :'); + blocks.forEach((block, index) => { + try { + const parsed = parseGiftQuestion(block); + console.log(`${index + 1}. ${parsed.title}`); + } catch (e) { + console.log(`${index + 1}. [Question non parsable]`); + } + }); + console.log(''); + } + + if (blocks.length < 15) { + console.log(`${colors.red}⚠️ Il manque encore ${15 - blocks.length} question(s) (minimum: 15)${colors.reset}`); + } else if (blocks.length > 20) { + console.log(`${colors.red}⚠️ Vous avez ${blocks.length - 20} question(s) en trop (maximum: 20)${colors.reset}`); + } else { + console.log(`${colors.green}✓ Nombre de questions valide !${colors.reset}`); + } + + console.log('==========================\n'); + } - const finish = await rl.question(`Terminer la création maintenant ? (y=oui, n=continuer) : \n${blue}votre examen doit avoir entre 15 et 20 questions uniques pour être valide${reset} `); + displaySelection(selectedBlocks); + + const finish = await rl.question(`Terminer la création maintenant ? (y=oui, n=continuer) : `); if (finish.trim().toLowerCase() === 'y') break; } @@ -235,4 +264,4 @@ export default async function creerExamen(rl = null) { } finally { if (ownRl && rl) rl.close(); } -} +} \ No newline at end of file