@@ -7,6 +7,7 @@ import { authenticatedFetch } from '../../lib/api';
77import { useFormStore } from '../../store/formStore' ;
88import { useNavigationStore } from '../../store/navigationStore' ;
99import Modal from '@/components/Modal' ;
10+ import { questions } from '@/lib/constants' ;
1011
1112// Assuming a TeamMember interface for better typing
1213interface TeamMember {
@@ -19,16 +20,16 @@ interface TeamMember {
1920}
2021
2122interface TeamData {
22- id : number ;
23- team_id : number ;
24- name : string ;
25- members : TeamMember [ ] ;
23+ id : number ;
24+ team_id : number ;
25+ name : string ;
26+ members : TeamMember [ ] ;
2627}
2728
2829interface ChallengeResult {
2930 user_id : number ;
3031 question : string ;
31- user_answer : string ;
32+ user_answer ? : string ;
3233 correct_answer : string ;
3334 is_correct : boolean ;
3435}
@@ -229,12 +230,12 @@ export default function Page4() {
229230 < p className = "text-lg font-semibold" > { member . name } </ p >
230231 { member . github_url && (
231232 < p className = "text-sm text-gray-600" >
232- GitHub: < a href = { member . github_url } target = "_blank" rel = "noopener noreferrer" className = "text-blue-500 hover:underline" > { member . github_url } </ a >
233+ GitHub: < a href = { member . github_url } target = "_blank" rel = "noopener noreferrer" className = "text-blue-500 hover:underline" onClick = { ( e ) => e . stopPropagation ( ) } > { member . github_url } </ a >
233234 </ p >
234235 ) }
235236 { member . linkedin_url && (
236237 < p className = "text-sm text-gray-600" >
237- LinkedIn: < a href = { member . linkedin_url } target = "_blank" rel = "noopener noreferrer" className = "text-blue-500 hover:underline" > { member . linkedin_url } </ a >
238+ LinkedIn: < a href = { member . linkedin_url } target = "_blank" rel = "noopener noreferrer" className = "text-blue-500 hover:underline" onClick = { ( e ) => e . stopPropagation ( ) } > { member . linkedin_url } </ a >
238239 </ p >
239240 ) }
240241 </ div >
@@ -253,18 +254,28 @@ export default function Page4() {
253254 </ div >
254255 < Modal
255256 isOpen = { isModalOpen }
256- title = " Challenge Result"
257+ title = { selectedMemberChallenge && teamData ? teamData . members . find ( m => m . user_id === selectedMemberChallenge . user_id ) ?. name || ' Challenge Result' : 'Challenge Result' }
257258 content = {
258259 selectedMemberChallenge
259260 ? `
260- <p class="mb-2"><strong>Question:</strong> ${ selectedMemberChallenge . question } </p>
261- <p class="mb-1"><strong>Your Answer:</strong> <span class="${ selectedMemberChallenge . is_correct ? 'text-green-400' : 'text-red-400' } ">${ selectedMemberChallenge . user_answer } </span></p>
261+ <p class="mb-2"><strong>Question:</strong> ${ ( ( ) => {
262+ const memberName = teamData ?. members . find ( m => m . user_id === selectedMemberChallenge . user_id ) ?. name || '' ;
263+ const questionInfo = questions . find ( q => q . category === selectedMemberChallenge . question ) ;
264+ const questionText = questionInfo ? questionInfo . problem : selectedMemberChallenge . question ;
265+ return `${ memberName } ${ questionText } ` ;
266+ } ) ( ) } </p>
267+ <p class="mb-2"><strong>Keyword:</strong> ${ ( ( ) => {
268+ const questionInfo = questions . find ( q => q . category === selectedMemberChallenge . question ) ;
269+ return questionInfo ? questionInfo . keyword : 'Unknown' ;
270+ } ) ( ) } </p>
271+ <p class="mb-1"><strong>Your Answer:</strong> <span class="${ selectedMemberChallenge . is_correct ? 'text-green-400' : 'text-red-400' } ">${ selectedMemberChallenge . user_answer || ( selectedMemberChallenge . is_correct ? selectedMemberChallenge . correct_answer : 'Unknown' ) } </span></p>
262272 ${ ! selectedMemberChallenge . is_correct ? `<p class="mb-2"><strong>Correct Answer:</strong> <span class="text-green-400">${ selectedMemberChallenge . correct_answer } </span></p>` : '' }
263273 `
264274 : ''
265275 }
266276 onConfirm = { ( ) => setIsModalOpen ( false ) }
267277 onDoNotShowAgain = { ( ) => setIsModalOpen ( false ) }
278+ showDoNotShowAgain = { false }
268279 />
269280 </ div >
270281 ) ;
0 commit comments