19 declare(strict_types=1);
    32         $this->recipients[] = $a_rcp;
    55     public function send(): void
    59         $table = $this->record->getTable()->getTitle();
    60         $link = ilLink::_getLink($this->
getRefId());
    61         foreach ($this->recipients as $user_id) {
    62             $views = $this->record->getTable()->getVisibleTableViews($user_id);
    64             foreach ($views as $view) {
    65                 foreach ($view->getVisibleFields() as $field) {
    66                     $visible_ids[] = $field->getId();
    69             $visible_ids = array_unique($visible_ids);
    71             $lng->loadLanguageModule(
'dcl');
    74             $this->
setSubject(sprintf(
$lng->txt(
'dcl_change_notification_subject'), $title));
    81             if ($visible_ids !== []) {
    83                 $message .= 
"------------------------------------\n";
    84                 foreach ($this->record->getTable()->getFields() as $field) {
    85                     if (in_array($field->getId(), $visible_ids)) {
    86                         $value = 
'-undefined-';
    87                         if ($field->isStandardField()) {
    88                             $value = $this->record->getStandardFieldPlainText($field->getId());
    89                         } elseif ($record_field = $this->record->getRecordField((
int) $field->getId())) {
    90                             $value = $record_field->getPlainText();
    92                         $message .= $field->getTitle() . 
': ' . $value . 
"\n";
    95                 $message .= 
"------------------------------------";
   100             $this->
appendBody(
$lng->txt(
'dcl_change_notification_link') . 
": $link");
   101             $this->
getMail()->appendInstallationSignature(
true);
   109             case self::TYPE_RECORD_CREATE:
   110                 return $lng->
txt(
'dcl_change_notification_dcl_new_record');
   111             case self::TYPE_RECORD_UPDATE:
   112                 return $lng->
txt(
'dcl_change_notification_dcl_update_record');
   113             case self::TYPE_RECORD_DELETE:
   114                 return $lng->
txt(
'dcl_change_notification_dcl_delete_record');
   122         return parent::appendBody($a_body . 
"\n\n");
 
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
 
sendMail(array $a_rcp, bool $a_parse_recipients=true)
 
setRecord(ilDclBaseRecordModel $record)
 
static getNamePresentation( $a_user_id, bool $a_user_image=false, bool $a_profile_link=false, string $a_profile_back_link='', bool $a_force_first_lastname=false, bool $a_omit_login=false, bool $a_sortable=true, bool $a_return_data_array=false, $a_ctrl_path='ilpublicuserprofilegui')
Default behaviour is: 
 
static _lookupTitle(int $obj_id)
 
static _getLanguageOfUser(int $a_usr_id)
Get language object of user. 
 
static getSalutation(int $a_usr_id, ?ilLanguage $a_language=null)
 
ilDclBaseRecordModel $record
 
setSubject(string $a_subject)
 
appendBody(string $a_body)
 
getAction(ilLanguage $lng)