diff --git a/main/inc/lib/ScheduledAnnouncement.php b/main/inc/lib/ScheduledAnnouncement.php index caeaa3e4019..45574a834a5 100644 --- a/main/inc/lib/ScheduledAnnouncement.php +++ b/main/inc/lib/ScheduledAnnouncement.php @@ -112,6 +112,26 @@ public function returnSimpleForm($id, $url, $action, $sessionInfo = []) $form->addHidden('session_id', $sessionInfo['id']); $form->addDateTimePicker('date', get_lang('Date')); + + $useBaseProgress = api_get_configuration_value('scheduled_announcements_use_base_progress'); + if ($useBaseProgress) { + $extraFieldValue = new ExtraFieldValue('scheduled_announcement'); + $baseProgress = $extraFieldValue->get_values_by_handler_and_field_variable( + $id, + 'use_base_progress' + ); + $form->addNumeric ('progress', + get_lang('Progress'), + [ + 'step' => 1, + 'min' => 1, + 'max' => 100, + 'value' => $baseProgress['value'], + ], + true + ); + } + $form->addText('subject', get_lang('Subject')); $form->addHtmlEditor('message', get_lang('Message')); @@ -185,6 +205,11 @@ public function returnForm($url, $action, $sessionInfo = []) $typeOptions['base_date'] = get_lang('BaseDate'); } + $useBaseProgress = api_get_configuration_value('scheduled_announcements_use_base_progress'); + if ($useBaseProgress) { + $typeOptions['base_progress'] = get_lang('BaseProgress'); + } + $form->addSelect( 'type', get_lang('Type'), @@ -194,9 +219,15 @@ public function returnForm($url, $action, $sessionInfo = []) if (this.options[this.selectedIndex].value == 'base_date') { document.getElementById('options').style.display = 'block'; document.getElementById('specific_date').style.display = 'none'; - } else { + document.getElementById('base_progress').style.display = 'none'; + } else if (this.options[this.selectedIndex].value == 'specific_date') { document.getElementById('options').style.display = 'none'; document.getElementById('specific_date').style.display = 'block'; + document.getElementById('base_progress').style.display = 'none'; + } else { + document.getElementById('options').style.display = 'block'; + document.getElementById('specific_date').style.display = 'none'; + document.getElementById('base_progress').style.display = 'block'; } ", ] ); @@ -204,6 +235,20 @@ public function returnForm($url, $action, $sessionInfo = []) $form->addHtml('
'); $form->addDateTimePicker('date', get_lang('Date')); $form->addHtml('
'); + + $form->addHtml(''); + $form->addHtml('