Évaluation

Share
Évaluation des élèves

Évaluation après séance

Étape 1 sur 7

📋 Récapitulatif des élèves évalués

✏️ Modifier l’évaluation

${chapitresSelectionnes}
`; } recap += `
Compréhension :
${comprehension}
Engagement :
${engagement}
Alerte :
${alerte}
`; if (commentaire) { recap += `
Commentaire :
${commentaire}
`; } document.getElementById('recapContent').innerHTML = recap; genererListeDuplication(); showStep(7); } function getLevelClass(level) { switch(level) { case 'Excellent': return 'level-excellent'; case 'Bon': return 'level-bon'; case 'Moyen': return 'level-moyen'; case 'Faible': return 'level-faible'; default: return ''; } } function genererListeDuplication() { const eleveActuelElem = document.querySelector('input[name="eleve"]:checked'); const eleveActuel = eleveActuelElem.value; const tousEleves = Array.from(document.querySelectorAll('input[name="eleve"]')) .map(input => input.value) .filter(val => val !== eleveActuel && !elevesEvalues.includes(val)); const duplicationGroup = document.getElementById('duplicationGroup'); duplicationGroup.innerHTML = ''; if (tousEleves.length === 0) { duplicationGroup.innerHTML = '

Tous les élèves ont été évalués.

'; } else { tousEleves.forEach((eleve, index) => { const div = document.createElement('div'); div.className = 'checkbox-item'; div.innerHTML = ` `; duplicationGroup.appendChild(div); }); } } function validerEvaluation() { const eleveElem = document.querySelector('input[name="eleve"]:checked'); const eleve = eleveElem.value; const comprehension = document.querySelector('input[name="comprehension"]:checked').value; const engagement = document.querySelector('input[name="engagement"]:checked').value; const alerteElem = document.querySelector('input[name="alerte"]:checked'); const alerte = alerteElem ? alerteElem.value : 'Non'; const commentaire = document.getElementById('commentaire').value.trim(); evaluations.push({ eleve, chapitres: chapitresSelectionnes, comprehension, engagement, alerte, commentaire }); elevesEvalues.push(eleve); const duplications = Array.from(document.querySelectorAll('input[name="duplication"]:checked')) .map(ch => ch.value); if (duplications.length > 0) { duplications.forEach(eleveNom => { evaluations.push({ eleve: eleveNom, chapitres: chapitresSelectionnes, comprehension, engagement, alerte, commentaire }); elevesEvalues.push(eleveNom); }); } afficherHistorique(); const elevesRestants = Array.from(document.querySelectorAll('input[name="eleve"]')) .map(input => input.value) .filter(val => !elevesEvalues.includes(val)); if (elevesRestants.length === 0) { document.getElementById('historique').style.display = 'block'; document.getElementById('evaluationForm').style.display = 'none'; } else { document.getElementById('historique').style.display = 'block'; } } function afficherHistorique() { const liste = document.getElementById('listeEvaluations'); liste.innerHTML = ''; evaluations.forEach((eval, index) => { const div = document.createElement('div'); div.className = 'evaluation-item'; const compClass = getLevelClass(eval.comprehension); const engClass = getLevelClass(eval.engagement); const alertClass = eval.alerte === 'Oui' ? 'alert-yes' : 'alert-no'; let content = `

👤 ${eval.eleve}

`; if (eval.chapitres) { content += `
Chapitres :
${eval.chapitres}
`; } content += `
Compréhension :
${eval.comprehension}
Engagement :
${eval.engagement}
Alerte :
${eval.alerte}
`; if (eval.commentaire) { content += `
Commentaire :
${eval.commentaire}
`; } div.innerHTML = content; liste.appendChild(div); }); } function ouvrirModale(index) { indexModification = index; const eval = evaluations[index]; // Remplir les champs de la modale document.getElementById('modalEleve').value = eval.eleve; document.getElementById('modalChapitres').value = eval.chapitres || ''; document.getElementById('modalCommentaire').value = eval.commentaire || ''; // Sélectionner les radios de compréhension document.querySelectorAll('input[name="modalComprehension"]').forEach(radio => { radio.checked = radio.value === eval.comprehension; }); // Sélectionner les radios d'engagement document.querySelectorAll('input[name="modalEngagement"]').forEach(radio => { radio.checked = radio.value === eval.engagement; }); // Sélectionner les radios d'alerte document.querySelectorAll('input[name="modalAlerte"]').forEach(radio => { radio.checked = radio.value === eval.alerte; }); // Afficher la modale const overlay = document.getElementById('evalModalOverlay'); overlay.classList.add('active'); // Empêcher le scroll du body document.body.style.overflow = 'hidden'; } function fermerModale() { const overlay = document.getElementById('evalModalOverlay'); overlay.classList.remove('active'); indexModification = -1; // Réactiver le scroll du body document.body.style.overflow = ''; } function sauvegarderModification() { if (indexModification === -1) return; // Récupérer les nouvelles valeurs const chapitres = document.getElementById('modalChapitres').value.trim(); const comprehension = document.querySelector('input[name="modalComprehension"]:checked')?.value; const engagement = document.querySelector('input[name="modalEngagement"]:checked')?.value; const alerte = document.querySelector('input[name="modalAlerte"]:checked')?.value; const commentaire = document.getElementById('modalCommentaire').value.trim(); // Validation if (!comprehension) { alert('Veuillez sélectionner un niveau de compréhension'); return; } if (!engagement) { alert('Veuillez sélectionner un niveau d\'engagement'); return; } if (!alerte) { alert('Veuillez sélectionner une option pour l\'alerte'); return; } // Mettre à jour l'évaluation evaluations[indexModification] = { ...evaluations[indexModification], chapitres, comprehension, engagement, alerte, commentaire }; // Rafraîchir l'affichage afficherHistorique(); // Fermer la modale fermerModale(); } // Fermer la modale en cliquant en dehors document.getElementById('evalModalOverlay').addEventListener('click', function(e) { if (e.target === this) { fermerModale(); } }); function nouvelleEvaluation() { const elevesRestants = Array.from(document.querySelectorAll('input[name="eleve"]')) .map(input => input.value) .filter(val => !elevesEvalues.includes(val)); if (elevesRestants.length === 0) { alert('Tous les élèves ont été évalués !'); return; } document.querySelectorAll('input[name="eleve"]').forEach(r => r.checked = false); document.querySelectorAll('input[name="comprehension"]').forEach(r => r.checked = false); document.querySelectorAll('input[name="engagement"]').forEach(r => r.checked = false); document.querySelector('input[value="Non"][name="alerte"]').checked = true; document.getElementById('commentaire').value = ''; document.querySelectorAll('input[name="eleve"]').forEach(input => { const parentItem = input.closest('.radio-item'); if (elevesEvalues.includes(input.value)) { parentItem.style.display = 'none'; input.disabled = true; } }); document.getElementById('historique').style.display = 'none'; document.getElementById('evaluationForm').style.display = 'block'; showStep(2); } function terminer() { if (confirm('Voulez-vous vraiment terminer les évaluations ?')) { alert('Évaluations terminées ! ' + evaluations.length + ' élève(s) évalué(s).'); } } updateProgress();