18 declare(strict_types=1);
31 public function collect(
string $event, array $parameter): void
33 $this->events[] = [$event, $parameter];
39 foreach (array_filter($this->events) as $entry) {
40 list($event, $parameter) = $entry;
41 $k = $event . print_r($parameter,
true);
42 if (!array_key_exists($k, $accounted_for)) {
43 $accounted_for[$k] =
true;
44 $this->prg_events->raise($event, $parameter);
52 $this->
collect(self::EVENT_USER_ASSIGNED, [
53 "root_prg_id" => $assignment->
getRootId(),
55 "ass_id" => $assignment->
getId()
61 $this->
collect(self::EVENT_USER_REASSIGNED, [
62 "ass_id" => $assignment->
getId(),
69 $this->
collect(self::EVENT_USER_DEASSIGNED, [
70 "root_prg_id" => $a_assignment->
getRootId(),
72 "ass_id" => $a_assignment->
getId()
79 $this->
collect(self::EVENT_USER_TO_RESTART, [
80 "ass_id" => (
int) $assignment->
getId(),
87 $this->
collect(self::EVENT_USER_ABOUT_TO_FAIL, [
88 "ass_id" => (
int) $assignment->
getId(),
95 $this->
collect(self::EVENT_USER_SUCCESSFUL, [
96 "root_prg_id" => $assignment->
getRootId(),
97 "prg_id" => $pgs_node_id,
99 "ass_id" => $assignment->
getId()
105 $this->
collect(self::EVENT_VALIDITY_CHANGE, [
106 "ass_id" => $assignment->
getId(),
107 "root_prg_id" => $assignment->
getRootId(),
108 "prg_id" => $pgs_node_id,
115 $this->
collect(self::EVENT_DEADLINE_CHANGE, [
116 "ass_id" => $assignment->
getId(),
117 "root_prg_id" => $assignment->
getRootId(),
118 "prg_id" => $pgs_node_id,
125 $this->
collect(self::EVENT_SCORE_CHANGE, [
126 "ass_id" => $assignment->
getId(),
127 "root_prg_id" => $assignment->
getRootId(),
128 "prg_id" => $pgs_node_id,
135 $this->
collect(self::EVENT_USER_NOT_SUCCESSFUL, [
136 "ass_id" => $assignment->
getId(),
137 "root_prg_id" => $assignment->
getRootId(),
138 "prg_id" => $pgs_node_id,
userReAssigned(ilPRGAssignment $assignment)
userSuccessful(ilPRGAssignment $assignment, int $pgs_node_id)
validityChange(ilPRGAssignment $assignment, int $pgs_node_id)
informUserByMailToRestart(ilPRGAssignment $assignment)
collect(string $event, array $parameter)
__construct(ilStudyProgrammeEvents $prg_events)
ilStudyProgrammeEvents $prg_events
userAssigned(ilPRGAssignment $assignment)
userDeassigned(ilPRGAssignment $a_assignment)
deadlineChange(ilPRGAssignment $assignment, int $pgs_node_id)
userRiskyToFail(ilPRGAssignment $assignment)
Assignments are relations of users to a PRG; They hold progress-information for (sub-)nodes of the PR...
scoreChange(ilPRGAssignment $assignment, int $pgs_node_id)
userRevertSuccessful(ilPRGAssignment $assignment, int $pgs_node_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...