public function ScheduledPublishWidget::submitSaveEntry in Scheduled Publish 8.3
Saves entry into form state.
1 call to ScheduledPublishWidget::submitSaveEntry()
- ScheduledPublishWidget::handleSubmissions in src/
Plugin/ Field/ FieldWidget/ ScheduledPublishWidget.php - Handles submissions.
File
- src/
Plugin/ Field/ FieldWidget/ ScheduledPublishWidget.php, line 507
Class
- ScheduledPublishWidget
- Plugin implementation of the 'scheduled_publish_widget' widget.
Namespace
Drupal\scheduled_publish\Plugin\Field\FieldWidgetCode
public function submitSaveEntry(FormStateInterface $form_state, $triggering_element) {
$values = $form_state
->getValue($triggering_element['#sp_id']);
if ($values && isset($values['moderation_state'], $values['value'])) {
$entries = $form_state
->get([
'scheduled_publish',
$triggering_element['#sp_id'],
]);
$date = $values['value'];
$date
->setTimezone(new \DateTimeZone(date_default_timezone_get()));
$date_display = $date
->format('d.m.Y - H:i');
$date
->setTimezone(new \DateTimezone(ScheduledPublish::STORAGE_TIMEZONE));
$entries[] = [
'date' => $date
->format(ScheduledPublish::DATETIME_STORAGE_FORMAT),
'date_display' => $date_display,
'state' => $values['moderation_state'],
'state_display' => NULL,
'state_options' => [],
'delta' => NULL,
'form' => NULL,
];
$form_state
->set([
'scheduled_publish',
$triggering_element['#sp_id'],
], $entries);
$this
->handleEntries($form_state, $triggering_element['#sp_id']);
// Reset form values.
$input = $form_state
->getUserInput();
$input[$triggering_element['#sp_id']] = [];
$form_state
->setUserInput($input);
}
}