aboutsummaryrefslogtreecommitdiff
path: root/lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php
diff options
context:
space:
mode:
authorMarcus Eibrink-Lunzenauer <lunzenauer@elan-ev.de>2023-11-14 11:57:16 +0100
committerMarcus Eibrink-Lunzenauer <lunzenauer@elan-ev.de>2024-07-09 09:19:01 +0200
commit62cc5d1f509b245159ffcbd0dbd08ab389e51615 (patch)
tree84070ab147fdfa4ecb26767f42de7d1374a304c1 /lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php
parent2aa22a3decc515ef19681e3fbb303e395bfef6d4 (diff)
Add Peer Review on top of feature/better-tasks.feature/peerreview-6
Diffstat (limited to 'lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php')
-rw-r--r--lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php b/lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php
index c950671..6870664 100644
--- a/lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php
+++ b/lib/classes/JsonApi/Schemas/Courseware/TaskGroup.php
@@ -15,6 +15,7 @@ class TaskGroup extends SchemaProvider
const REL_COURSE = 'course';
const REL_LECTURER = 'lecturer';
+ const REL_PEER_REVIEW_PROCESSES = 'peer-review-processes';
const REL_SOLVERS = 'solvers';
const REL_TARGET = 'target';
const REL_TASK_TEMPLATE = 'task-template';
@@ -68,6 +69,8 @@ class TaskGroup extends SchemaProvider
]
: [self::RELATIONSHIP_DATA => null];
+ $relationships = $this->addPeerReviewProcessesRelationship($relationships, $resource, $context);
+
$relationships[self::REL_SOLVERS] = [
self::RELATIONSHIP_DATA => $resource->getSolvers(),
];
@@ -104,4 +107,19 @@ class TaskGroup extends SchemaProvider
return $relationships;
}
+
+ private function addPeerReviewProcessesRelationship(iterable $relationships, TaskGroupModel $resource, ContextInterface $context): iterable
+ {
+ $relationships[self::REL_PEER_REVIEW_PROCESSES] = [
+ self::RELATIONSHIP_LINKS => [
+ Link::RELATED => $this->getRelationshipRelatedLink($resource, self::REL_PEER_REVIEW_PROCESSES),
+ ],
+ ];
+
+ if ($this->shouldInclude($context, self::REL_PEER_REVIEW_PROCESSES)) {
+ $relationships[self::REL_PEER_REVIEW_PROCESSES][self::RELATIONSHIP_DATA] = $resource->peer_review_processes;
+ }
+
+ return $relationships;
+ }
}