19 declare(strict_types=1);
    40         $main_tpl = $DIC->ui()->mainTemplate();
    41         $lng = $DIC->language();
    43         $exc_domain = $DIC->exercise()->internal()->domain();
    48         if (count($additional_params) > 0) {
    49             $last = (string) $additional_params[count($additional_params) - 1];
    51         $ass_id = (
int) ($additional_params[0] ?? 0);
    58                 $action = $additional_params[2] ?? 
"";
    59                 $member = $additional_params[1];
    63                 $action = $additional_params[2] ?? 
"";
    64                 $peer_id = (
int) ($additional_params[1] ?? 0);
    69                 $action = $additional_params[1] ?? 
"";
    73         $ctrl = $context->
ctrl();
    75         $ctrl->setParameterByClass(\ilExerciseHandlerGUI::class, 
"ref_id", 
$ref_id);
    80                 $ctrl->setParameterByClass(\ilExerciseManagementGUI::class, 
"ass_id", $ass_id);
    85                     $uri = $ctrl->getLinkTargetByClass(
    86                         [\ilExerciseHandlerGUI::class, \ilObjExerciseGUI::class, \ilExerciseManagementGUI::class],
    92                     $ctrl->setParameterByClass(\ilExerciseHandlerGUI::class, 
"member_id", $member);
    93                     $uri = $ctrl->getLinkTargetByClass(
    94                         array(\ilExerciseHandlerGUI::class, \ilObjExerciseGUI::class, \ilExerciseManagementGUI::class),
   100                     $ctrl->setParameterByClass(\ilObjExerciseGUI::class, 
"ass_id", $ass_id);
   101                     $ctrl->setParameterByClass(\ilObjExerciseGUI::class, 
"peer_id", $peer_id);
   102                     $uri = $ctrl->getLinkTargetByClass(
   103                         array(\ilExerciseHandlerGUI::class, \ilObjExerciseGUI::class, \ilAssignmentPresentationGUI::class,
   104                               \ilExSubmissionGUI::class, \ilExPeerReviewGUI::class),
   110                     $ctrl->setParameterByClass(\ilObjExerciseGUI::class, 
"ass_id", $ass_id);
   111                     $uri = $ctrl->getLinkTargetByClass(
   112                         array(\ilExerciseHandlerGUI::class, \ilObjExerciseGUI::class, \ilAssignmentPresentationGUI::class,
   113                               \ilExSubmissionGUI::class, \ilExPeerReviewGUI::class),
   114                         "showReceivedPeerReview"   120                         $ctrl->setParameterByClass(\ilObjExerciseGUI::class, 
"ass_id", $ass_id);
   121                         $uri = $ctrl->getLinkTargetByClass(
   122                             [\ilExerciseHandlerGUI::class, \ilObjExerciseGUI::class, \ilAssignmentPresentationGUI::class],
   126                         $uri = $ctrl->getLinkTargetByClass(
   127                             [\ilExerciseHandlerGUI::class, \ilObjExerciseGUI::class],
   135             $uri = $ctrl->getLinkTargetByClass(
   136                 [\ilExerciseHandlerGUI::class, \ilObjExerciseGUI::class],
   141             if ($exc_domain->user()->isAnonymous() || $exc_domain->user()->getId() == 0) {
   144                 return $response_factory->
cannot();
   147         return $response_factory->
can($uri);
 getAdditionalParameters()
 
checkPermission(string $permission, int $ref_id)
 
handle(Request $request, Context $context, Factory $response_factory)