feat: opdrachten met dichtste deadlines staan van boven
This commit is contained in:
		
							parent
							
								
									64985dfef8
								
							
						
					
					
						commit
						f93e738d36
					
				
					 1 changed files with 18 additions and 1 deletions
				
			
		|  | @ -32,6 +32,7 @@ | ||||||
|     const assignments = asyncComputed(async () => { |     const assignments = asyncComputed(async () => { | ||||||
|         const classes = classesQueryResults?.data?.value?.classes; |         const classes = classesQueryResults?.data?.value?.classes; | ||||||
|         if (!classes) return []; |         if (!classes) return []; | ||||||
|  | 
 | ||||||
|         const result = await Promise.all( |         const result = await Promise.all( | ||||||
|             (classes as ClassDTO[]).map(async (cls) => { |             (classes as ClassDTO[]).map(async (cls) => { | ||||||
|                 const { assignments } = await classController.getAssignments(cls.id); |                 const { assignments } = await classController.getAssignments(cls.id); | ||||||
|  | @ -48,9 +49,25 @@ | ||||||
|             }), |             }), | ||||||
|         ); |         ); | ||||||
| 
 | 
 | ||||||
|         return result.flat(); |         // Order the assignments by deadline | ||||||
|  |         return result | ||||||
|  |             .flat() | ||||||
|  |             .sort((a, b) => { | ||||||
|  |                 const now = Date.now(); | ||||||
|  |                 const aTime = new Date(a.deadline).getTime(); | ||||||
|  |                 const bTime = new Date(b.deadline).getTime(); | ||||||
|  | 
 | ||||||
|  |                 const aIsPast = aTime < now; | ||||||
|  |                 const bIsPast = bTime < now; | ||||||
|  | 
 | ||||||
|  |                 if (aIsPast && !bIsPast) return 1; | ||||||
|  |                 if (!aIsPast && bIsPast) return -1; | ||||||
|  | 
 | ||||||
|  |                 return aTime - bTime; | ||||||
|  |             }); | ||||||
|     }, []); |     }, []); | ||||||
| 
 | 
 | ||||||
|  | 
 | ||||||
|     async function goToCreateAssignment(): Promise<void> { |     async function goToCreateAssignment(): Promise<void> { | ||||||
|         await router.push("/assignment/create"); |         await router.push("/assignment/create"); | ||||||
|     } |     } | ||||||
|  |  | ||||||
		Reference in a new issue
	
	 Joyelle Ndagijimana
						Joyelle Ndagijimana