From b02aa6eb79b62eabfe48bc022270e8df40c11e0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Minelli?= <michael@minelli.me> Date: Thu, 2 Nov 2023 19:24:10 +0100 Subject: [PATCH] DojoBackendManager => Assignment/Exercise creation error enhancement --- NodeApp/src/managers/DojoBackendManager.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/NodeApp/src/managers/DojoBackendManager.ts b/NodeApp/src/managers/DojoBackendManager.ts index 12cc16b..42bda3f 100644 --- a/NodeApp/src/managers/DojoBackendManager.ts +++ b/NodeApp/src/managers/DojoBackendManager.ts @@ -9,6 +9,7 @@ import DojoBackendResponse from '../shared/types/Dojo/DojoBackendResponse'; import Exercise from '../sharedByClients/models/Exercise'; import GitlabToken from '../shared/types/Gitlab/GitlabToken'; import User from '../sharedByClients/models/User'; +import DojoStatusCode from '../shared/types/Dojo/DojoStatusCode'; class DojoBackendManager { @@ -106,7 +107,11 @@ class DojoBackendManager { if ( error.response.status === StatusCodes.CONFLICT ) { spinner.fail(`The assignment name is already used. Please choose another one.`); } else { - spinner.fail(`Assignment creation error: ${ error.response.statusText }`); + if ( (error.response.data as DojoBackendResponse<any>).code === DojoStatusCode.ASSIGNMENT_CREATION_GITLAB_ERROR ) { + spinner.fail(`Assignment creation error: An unknown error occurred while creating the assignment on Gitlab. Please try again later or contact an administrator.`); + } else { + spinner.fail(`Assignment creation error: An unknown error occurred while creating the assignment on Dojo server. Please try again later or contact an administrator.`); + } } } } else { @@ -140,7 +145,11 @@ class DojoBackendManager { if ( error.response.status === StatusCodes.CONFLICT ) { spinner.fail(`You've already reached the max number of exercise of this assignment.`); } else { - spinner.fail(`Exercise creation error: ${ error.response.statusText }`); + if ( (error.response.data as DojoBackendResponse<any>).code === DojoStatusCode.EXERCISE_CREATION_GITLAB_ERROR ) { + spinner.fail(`Exercise creation error: An unknown error occurred while creating the exercise on Gitlab. Please try again later or contact an administrator.`); + } else { + spinner.fail(`Exercise creation error: An unknown error occurred while creating the exercise on Dojo server. Please try again later or contact an administrator.`); + } } } } else { -- GitLab