From a72c5eeaea65bddd521aa085dedb773d894e9186 Mon Sep 17 00:00:00 2001 From: Riku Rauhala Date: Tue, 11 Mar 2025 12:15:42 +0200 Subject: [PATCH] [Study programme] Update loading/error status --- .../index.tsx | 39 ++++++++----------- 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/services/frontend/src/pages/StudyProgramme/StudyTracksAndClassStatisticsTab/index.tsx b/services/frontend/src/pages/StudyProgramme/StudyTracksAndClassStatisticsTab/index.tsx index 2d083dbb6..e92685dc1 100644 --- a/services/frontend/src/pages/StudyProgramme/StudyTracksAndClassStatisticsTab/index.tsx +++ b/services/frontend/src/pages/StudyProgramme/StudyTracksAndClassStatisticsTab/index.tsx @@ -1,6 +1,5 @@ import { Alert, AlertTitle, Stack } from '@mui/material' import { useEffect, useState } from 'react' -import { Loader } from 'semantic-ui-react' import { getTargetCreditsForProgramme } from '@/common' import { studyProgrammeToolTips } from '@/common/InfoToolTips' @@ -57,13 +56,15 @@ export const StudyTracksAndClassStatisticsTab = ({ }, [studyProgramme, studyTrack, studyTrackStats, specialGroupsExcluded]) const hasErrors = (isSuccess && !studyTrackStats) || isError - if (hasErrors) { - return

Something went wrong, please try refreshing the page.

- } + const isFetchingOrLoading = isFetching || isLoading const noData = isSuccess && studyTrackStats.mainStatsByYear && !studyTrackStats.mainStatsByYear.Total.length if (noData) { - return

There is no data available for the selected programme between 2017-2022

+ return ( + + There is no data available for the selected programme between 2017-{new Date().getFullYear()} + + ) } const programmeCode = combinedProgramme ? `${studyProgramme}-${combinedProgramme}` : studyProgramme @@ -100,7 +101,7 @@ export const StudyTracksAndClassStatisticsTab = ({ } const hasStudyTracks = Object.keys(studyTrackStats?.studyTracks ?? {}).length > 1 && studyTrack === studyProgramme - const studyProgrammeMode = studyTrack === '' || studyTrack === studyProgramme + const isStudyProgrammeMode = studyTrack === '' || studyTrack === studyProgramme const calculateStudyTrackStats = (combo = false) => { if (!studyTrackStats?.graduationTimes) { @@ -155,11 +156,6 @@ export const StudyTracksAndClassStatisticsTab = ({ } } - // TODO: Replace with section status - if (isLoading || isFetching) { - return - } - return (
@@ -172,7 +168,7 @@ export const StudyTracksAndClassStatisticsTab = ({ @@ -231,11 +227,11 @@ export const StudyTracksAndClassStatisticsTab = ({
- {studyProgrammeMode ? ( + {isStudyProgrammeMode ? (
{studyTrackStats && ( @@ -264,15 +260,14 @@ export const StudyTracksAndClassStatisticsTab = ({ ? studyProgrammeToolTips.averageGraduationTimesStudyTracksMaster : studyProgrammeToolTips.averageGraduationTimesStudyTracks } - // TODO: isError={} - // TODO: isLoading={} + isError={hasErrors} + isLoading={isFetchingOrLoading} title="Average graduation times by starting year" >