19declare(strict_types=1);
30 case UserAdministration;
31 case LocalUserAdministration;
45 self::Registration => $field->isVisibleInRegistration(),
46 self::User => $field->isVisibleToUser()
47 || $field->isRequired() && ($user ===
null || empty($field->retrieveValueFromUser($user))),
48 self::LocalUserAdministration => $field->isVisibleInLocalUserAdministration()
49 || $field->isRequired() && ($user ===
null || empty($field->retrieveValueFromUser($user))),
50 self::Certificate => $field->isAvailableInCertificates(),
51 self::Course => $field->isVisibleInCourses(),
53 self::StudyProgramme => $field->isVisibleInStudyProgrammes(),
54 self::Search => $field->isSearchable(),
55 self::Export => $field->export(),
56 self::UserAdministration =>
true,
61 public function isFieldChangeable(
66 self::Registration => $field->isVisibleInRegistration(),
67 self::User => $field->isChangeableByUser()
68 || $field->isRequired() && ($user ===
null || empty($field->retrieveValueFromUser($user))),
69 self::LocalUserAdministration => $field->isChangeableInLocalUserAdministration()
70 || $field->isRequired() && ($user ===
null || empty($field->retrieveValueFromUser($user))),
71 self::UserAdministration =>
true,
76 public function isSettingAvailable(
80 self::UserAdministration =>
true,
81 self::LocalUserAdministration =>
$setting->isChangeableInLocalUserAdministration(),
82 self::User =>
$setting->isChangeableByUser(),
88 public static function buildFromObjectType(
string $type): ?
self
91 'crs' => self::Course,
93 'prg' => self::StudyProgramme,
94 'lso' => self::LearningSequence,
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...