function FeedForm::save

Same name and namespace in other branches
  1. 8.9.x core/modules/aggregator/src/FeedForm.php \Drupal\aggregator\FeedForm::save()

Overrides EntityForm::save

File

core/modules/aggregator/src/FeedForm.php, line 20

Class

FeedForm
Form handler for the aggregator feed edit forms.

Namespace

Drupal\aggregator

Code

public function save(array $form, FormStateInterface $form_state) {
  $feed = $this->entity;
  $status = $feed->save();
  $label = $feed->label();
  $view_link = $feed->toLink($label, 'canonical')
    ->toString();
  if ($status == SAVED_UPDATED) {
    $this->messenger()
      ->addStatus($this->t('The feed %feed has been updated.', [
      '%feed' => $view_link,
    ]));
    $form_state->setRedirectUrl($feed->toUrl('canonical'));
  }
  else {
    $this->logger('aggregator')
      ->notice('Feed %feed added.', [
      '%feed' => $feed->label(),
      'link' => Link::fromTextAndUrl($this->t('View'), new Url('aggregator.admin_overview'))
        ->toString(),
    ]);
    $this->messenger()
      ->addStatus($this->t('The feed %feed has been added.', [
      '%feed' => $view_link,
    ]));
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.