You are here

public function ScheduledUpdateTypeBaseForm::doSave in Scheduled Updates 8

Save the entity on submit.

Parameters

array $form:

\Drupal\Core\Form\FormStateInterface $form_state:

Return value

int

2 calls to ScheduledUpdateTypeBaseForm::doSave()
ScheduledUpdateTypeAddAsFieldForm::save in src/Form/ScheduledUpdateTypeAddAsFieldForm.php
Form submission handler for the 'save' action.
ScheduledUpdateTypeForm::save in src/Form/ScheduledUpdateTypeForm.php
Form submission handler for the 'save' action.

File

src/Form/ScheduledUpdateTypeBaseForm.php, line 602
Contains \Drupal\scheduled_updates\Form\ScheduledUpdateTypeBaseForm.

Class

ScheduledUpdateTypeBaseForm

Namespace

Drupal\scheduled_updates\Form

Code

public function doSave(array $form, FormStateInterface $form_state) {
  $definition = $this->runnerManager
    ->getDefinition($this->entity
    ->getUpdateRunnerSettings()['id']);
  $this->entity
    ->setUpdateTypesSupported($definition['update_types']);
  $status = $this->entity
    ->save();
  if ($status == SAVED_NEW) {
    $this
      ->messenger()
      ->addStatus($this
      ->t('Created the %label Scheduled Update Type.', [
      '%label' => $this->entity
        ->label(),
    ]));
    if (in_array('embedded', $this->entity
      ->getUpdateTypesSupported())) {
      if ($form_state
        ->getValue('reference_settings')) {
        $this
          ->setUpFieldReferences($form_state);
      }
    }
  }
  return $status;
}