3 declare(strict_types=1);
39 $this->
lng = $DIC->language();
40 $this->tree = $DIC->repositoryTree();
41 $this->objDefinition = $DIC[
'objDefinition'];
42 $this->
lng->loadLanguageModule(
'sysc');
52 return $this->
lng->txt(
'sysc_cron_empty_trash');
57 return $this->
lng->txt(
'sysc_cron_empty_trash_desc');
62 return JobScheduleType::WEEKLY;
68 JobScheduleType::DAILY,
69 JobScheduleType::WEEKLY,
70 JobScheduleType::MONTHLY,
71 JobScheduleType::QUARTERLY,
98 $this->
lng->loadLanguageModule(
'sysc');
105 $num->setInfo($this->
lng->txt(
'purge_count_limit_desc'));
107 $num->setMinValue(1);
108 $num->setValue($settings->get(
'num',
''));
113 $age->setInfo($this->
lng->txt(
'purge_age_limit_desc'));
115 $age->setMinValue(1);
116 $age->setMaxLength(4);
118 if ($settings->get(
'age',
'')) {
119 $age->setValue($settings->get(
'age',
''));
126 $sub_objects = $this->tree->lookupTrashedObjectTypes();
130 foreach ($sub_objects as $obj_type) {
131 if (!$this->objDefinition->isRBACObject($obj_type) || !$this->objDefinition->isAllowedInRepository($obj_type)) {
134 $options[$obj_type] = $this->
lng->txt(
'obj_' . $obj_type);
137 $types->setOptions($options);
138 $types->setValue($settings->get(
'types',
''));
146 if ((
string) $a_form->
getInput(
'number') ===
'') {
147 $settings->delete(
'num');
149 $settings->set(
'num', (
string) ((
int) $a_form->
getInput(
'number')));
152 if ((
string) $a_form->
getInput(
'age') ===
'') {
153 $settings->delete(
'age');
155 $settings->set(
'age', (
string) ((
int) $a_form->
getInput(
'age')));
158 if ($a_form->
getInput(
'types') ===
'') {
159 $settings->delete(
'types');
161 $settings->set(
'types', $a_form->
getInput(
'types'));
174 $trash->setNumberLimit((
int) $settings->get(
'num',
'0'));
175 $trash->setTypesLimit(array_filter([$settings->get(
'types',
'')]));
177 $age = (
int) $settings->get(
'age',
'0');
181 $trash->setAgeLimit($date);
186 $result->setStatus(JobResult::STATUS_OK);
ilObjectDefinition $objDefinition
saveCustomSettings(ilPropertyFormGUI $a_form)
getDefaultScheduleValue()
addCustomSettingsToForm(ilPropertyFormGUI $a_form)