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.