22{
23 private const string SETTINGS_ACCESS_PREFIX_CHANGEABLE_BY_USER = 'usr_settings_changeable_by_user';
24 private const string SETTINGS_ACCESS_PREFIX_CHANGEABLE_IN_LUA = 'usr_settings_changeable_lua';
25 private const string SETTINGS_ACCESS_PREFIX_EXPORT = 'usr_settings_export';
26
27 case VisibleInRegistration = 'header_visible_registration';
28 case VisibleToUser = 'user_visible_in_profile';
29 case VisibleInLocalUserAdministration = 'usr_settings_visib_lua';
30 case VisibleInCourses = 'course_export';
31 case VisibleInGroups = 'group_export';
32 case VisibleInStudyProgrammes = 'prg_export';
33 case ChangeableByUser = 'changeable';
34 case ChangeableInLocalUserAdministration = 'usr_settings_changeable_lua';
35 case Required = 'required_field';
37 case Searchable = 'header_searchable';
38 case AvailableInCertificates = 'certificate';
39
41 {
42 return match($this) {
43 self::ChangeableByUser => self::SETTINGS_ACCESS_PREFIX_CHANGEABLE_BY_USER,
44 self::ChangeableInLocalUserAdministration => self::SETTINGS_ACCESS_PREFIX_CHANGEABLE_IN_LUA,
45 self::Export => self::SETTINGS_ACCESS_PREFIX_EXPORT,
46 default => throw new \Exception('Not a valid setting!')
47 };
48 }
49}
@ getSettingsAccessPrefix