ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.PRGEventHandler.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22{
23 protected ilPRGMail $mail;
24 protected array $certificate_lock = [];
25 protected array $lp_lock = [];
26
27 public function __construct(
29 ) {
30 $this->mail = $mail;
31 $this->certificate_lock = [];
32 $this->lp_lock = [];
33 }
34
35 public function updateLPStatus(int $prg_obj_id, int $usr_id): void
36 {
37 $k = $prg_obj_id . '-' . $usr_id;
38 if (! in_array($k, $this->lp_lock)) {
39 ilLPStatusWrapper::_updateStatus($prg_obj_id, $usr_id);
40 $this->lp_lock[] = $k;
41 }
42 }
43
44 public function triggerCertificateOnce(\Closure $cert, int $prg_obj_id, int $usr_id): void
45 {
46 $k = $prg_obj_id . '-' . $usr_id;
47 if (! in_array($k, $this->certificate_lock)) {
48 $cert();
49 $this->certificate_lock[] = $k;
50 }
51 }
52
53 public function sendRiskyToFailMail(int $assignment_id, int $root_prg_id): void
54 {
55 $this->mail->sendRiskyToFailMail($assignment_id, $root_prg_id);
56 }
57
58 public function sendInformToReAssignMail(int $assignment_id, int $root_prg_id): void
59 {
60 $this->mail->sendInformToReAssignMail($assignment_id, $root_prg_id);
61 }
62
63 public function sendReAssignedMail(int $assignment_id, int $root_prg_id): void
64 {
65 $this->mail->sendReAssignedMail($assignment_id, $root_prg_id);
66 }
67
68 public function resetMailFlagValidity(int $assignment_id, int $root_prg_id): void
69 {
70 $this->mail->resetExpiryInfoSentFor($assignment_id, $root_prg_id);
71 }
72 public function resetMailFlagDeadline(int $assignment_id, int $root_prg_id): void
73 {
74 $this->mail->resetRiskyToFailSentFor($assignment_id, $root_prg_id);
75 }
76}
resetMailFlagDeadline(int $assignment_id, int $root_prg_id)
updateLPStatus(int $prg_obj_id, int $usr_id)
triggerCertificateOnce(\Closure $cert, int $prg_obj_id, int $usr_id)
sendRiskyToFailMail(int $assignment_id, int $root_prg_id)
sendReAssignedMail(int $assignment_id, int $root_prg_id)
resetMailFlagValidity(int $assignment_id, int $root_prg_id)
sendInformToReAssignMail(int $assignment_id, int $root_prg_id)
__construct(ilPRGMail $mail)
static _updateStatus(int $a_obj_id, int $a_usr_id, ?object $a_obj=null, bool $a_percentage=false, bool $a_force_raise=false)
Send mails to users (usually triggered by cron)