From 5fc7f2f9b4250b46f3dcbaea8222e11458a5e912 Mon Sep 17 00:00:00 2001 From: Gerald Schmittinger Date: Fri, 16 May 2025 12:49:10 +0200 Subject: [PATCH] =?UTF-8?q?feat(backend):=20Validatie=20dat=20targetAges?= =?UTF-8?q?=20aangegeven=20zijn=20voor=20ge=C3=BCploade=20leerobjecten.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/services/learning-objects/learning-object-service.ts | 2 +- .../learning-object-zip-processing-service.ts | 4 ++++ backend/src/services/learning-paths/learning-path-service.ts | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/backend/src/services/learning-objects/learning-object-service.ts b/backend/src/services/learning-objects/learning-object-service.ts index 1cc3cb78..6be10775 100644 --- a/backend/src/services/learning-objects/learning-object-service.ts +++ b/backend/src/services/learning-objects/learning-object-service.ts @@ -103,7 +103,7 @@ const learningObjectService = { const learningObjectRepo = getLearningObjectRepository(); const learningObject = await learningObjectRepo.findByIdentifier(id); if (!learningObject) { - throw new NotFoundException('The specified learning object does not exist.'); + throw new NotFoundException('learningObjectNotFound'); } return learningObject.admins.map((admin) => admin.username); }, diff --git a/backend/src/services/learning-objects/learning-object-zip-processing-service.ts b/backend/src/services/learning-objects/learning-object-zip-processing-service.ts index c92f456b..a0059ecc 100644 --- a/backend/src/services/learning-objects/learning-object-zip-processing-service.ts +++ b/backend/src/services/learning-objects/learning-object-zip-processing-service.ts @@ -68,6 +68,10 @@ function createLearningObject(metadata: LearningObjectMetadata, content: Buffer, callbackSchema: metadata.return_value?.callback_schema ? JSON.stringify(metadata.return_value.callback_schema) : '', }; + if (!metadata.target_ages || metadata.target_ages.length === 0) { + throw new BadRequestException("errorTargetAgesMandatory"); + } + const learningObject = learningObjectRepo.create({ admins: [], available: metadata.available ?? true, diff --git a/backend/src/services/learning-paths/learning-path-service.ts b/backend/src/services/learning-paths/learning-path-service.ts index 41dec92c..7579685a 100644 --- a/backend/src/services/learning-paths/learning-path-service.ts +++ b/backend/src/services/learning-paths/learning-path-service.ts @@ -150,7 +150,7 @@ const learningPathService = { ) ); if (learningObjectsOnPath.some(it => !it)) { - throw new BadRequestException("At least one of the specified learning objects does not exist.") + throw new BadRequestException("pathContainsNonExistingLearningObjects") } try {