Version 1
[yaffs-website] / web / core / modules / aggregator / src / FeedForm.php
diff --git a/web/core/modules/aggregator/src/FeedForm.php b/web/core/modules/aggregator/src/FeedForm.php
new file mode 100644 (file)
index 0000000..1580a30
--- /dev/null
@@ -0,0 +1,32 @@
+<?php
+
+namespace Drupal\aggregator;
+
+use Drupal\Core\Entity\ContentEntityForm;
+use Drupal\Core\Form\FormStateInterface;
+use Drupal\Core\Url;
+
+/**
+ * Form handler for the aggregator feed edit forms.
+ */
+class FeedForm extends ContentEntityForm {
+
+  /**
+   * {@inheritdoc}
+   */
+  public function save(array $form, FormStateInterface $form_state) {
+    $feed = $this->entity;
+    $status = $feed->save();
+    $label = $feed->label();
+    $view_link = $feed->link($label, 'canonical');
+    if ($status == SAVED_UPDATED) {
+      drupal_set_message($this->t('The feed %feed has been updated.', ['%feed' => $view_link]));
+      $form_state->setRedirectUrl($feed->urlInfo('canonical'));
+    }
+    else {
+      $this->logger('aggregator')->notice('Feed %feed added.', ['%feed' => $feed->label(), 'link' => $this->l($this->t('View'), new Url('aggregator.admin_overview'))]);
+      drupal_set_message($this->t('The feed %feed has been added.', ['%feed' => $view_link]));
+    }
+  }
+
+}