diff --git a/client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx b/client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx index f3b3e57..0332f1a 100644 --- a/client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx +++ b/client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx @@ -53,7 +53,7 @@ describe('TeacherModeQuiz', () => { fireEvent.click(screen.getByText('Répondre')); }); expect(mockSubmitAnswer).toHaveBeenCalledWith('Option A', 1); - expect(screen.getByText('Votre réponse est "Option A".')).toBeInTheDocument(); + expect(screen.getByText('Votre réponse est:')).toBeInTheDocument(); }); test('handles disconnect button click', () => { diff --git a/client/src/components/GiftTemplate/GIFTTemplatePreview.tsx b/client/src/components/GiftTemplate/GIFTTemplatePreview.tsx index f4ab035..1bacf8c 100644 --- a/client/src/components/GiftTemplate/GIFTTemplatePreview.tsx +++ b/client/src/components/GiftTemplate/GIFTTemplatePreview.tsx @@ -74,6 +74,7 @@ const GIFTTemplatePreview: React.FC = ({
{error}
) : isPreviewReady ? (
+
) : ( diff --git a/client/src/components/GiftTemplate/templates/TextTypeTemplate.ts b/client/src/components/GiftTemplate/templates/TextTypeTemplate.ts index 4f89322..c5569f4 100644 --- a/client/src/components/GiftTemplate/templates/TextTypeTemplate.ts +++ b/client/src/components/GiftTemplate/templates/TextTypeTemplate.ts @@ -5,6 +5,7 @@ import { TextFormat } from 'gift-pegjs'; import DOMPurify from 'dompurify'; // cleans HTML to prevent XSS attacks, etc. function formatLatex(text: string): string { + let renderedText = ''; try { diff --git a/client/src/components/LiveResults/LiveResults.tsx b/client/src/components/LiveResults/LiveResults.tsx index 44c998f..a9064ca 100644 --- a/client/src/components/LiveResults/LiveResults.tsx +++ b/client/src/components/LiveResults/LiveResults.tsx @@ -9,8 +9,8 @@ import { Switch, } from '@mui/material'; import { StudentType } from '../../Types/StudentType'; -import LiveResultsTable from './LiveResultsTable/LiveResultsTable'; +import LiveResultsTable from './LiveResultsTable/LiveResultsTable'; interface LiveResultsProps { socket: Socket | null; @@ -20,11 +20,11 @@ interface LiveResultsProps { students: StudentType[] } + const LiveResults: React.FC = ({ questions, showSelectedQuestion, students }) => { const [showUsernames, setShowUsernames] = useState(false); const [showCorrectAnswers, setShowCorrectAnswers] = useState(false); - return (
@@ -56,6 +56,7 @@ const LiveResults: React.FC = ({ questions, showSelectedQuesti
+ = ({ }) => { const [isAnswerSubmitted, setIsAnswerSubmitted] = useState(false); const [isFeedbackDialogOpen, setIsFeedbackDialogOpen] = useState(false); - const [feedbackMessage, setFeedbackMessage] = useState(''); + const [feedbackMessage, setFeedbackMessage] = useState(''); + + const renderFeedbackMessage = (answer: string) => { + if(answer === 'true' || answer === 'false'){ + return ( + Votre réponse est: {answer==="true" ? 'Vrai' : 'Faux'} + ) + } + else{ + return ( + + Votre réponse est: {answer.toString()} + + );} + }; useEffect(() => { // Close the feedback dialog when the question changes handleFeedbackDialogClose(); @@ -35,7 +49,7 @@ const TeacherModeQuiz: React.FC = ({ const handleOnSubmitAnswer = (answer: string | number | boolean) => { const idQuestion = Number(questionInfos.question.id) || -1; submitAnswer(answer, idQuestion); - setFeedbackMessage(`Votre réponse est "${answer.toString()}".`); + setFeedbackMessage(renderFeedbackMessage(answer.toString())); setIsFeedbackDialogOpen(true); }; @@ -77,7 +91,17 @@ const TeacherModeQuiz: React.FC = ({ > Rétroaction +
{feedbackMessage} +
Question :
+
+