Version 1
[yaffs-website] / web / core / modules / aggregator / src / AggregatorFeedViewsData.php
diff --git a/web/core/modules/aggregator/src/AggregatorFeedViewsData.php b/web/core/modules/aggregator/src/AggregatorFeedViewsData.php
new file mode 100644 (file)
index 0000000..b47f837
--- /dev/null
@@ -0,0 +1,51 @@
+<?php
+
+namespace Drupal\aggregator;
+
+use Drupal\views\EntityViewsData;
+
+/**
+ * Provides the views data for the aggregator feed entity type.
+ */
+class AggregatorFeedViewsData extends EntityViewsData {
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getViewsData() {
+    $data = parent::getViewsData();
+
+    $data['aggregator_feed']['table']['join'] = [
+      'aggregator_item' => [
+        'left_field' => 'fid',
+        'field' => 'fid',
+      ],
+    ];
+
+    $data['aggregator_feed']['fid']['help'] = $this->t('The unique ID of the aggregator feed.');
+    $data['aggregator_feed']['fid']['argument']['id'] = 'aggregator_fid';
+    $data['aggregator_feed']['fid']['argument']['name field'] = 'title';
+    $data['aggregator_feed']['fid']['argument']['numeric'] = TRUE;
+
+    $data['aggregator_feed']['fid']['filter']['id'] = 'numeric';
+
+    $data['aggregator_feed']['title']['help'] = $this->t('The title of the aggregator feed.');
+    $data['aggregator_feed']['title']['field']['default_formatter'] = 'aggregator_title';
+
+    $data['aggregator_feed']['argument']['id'] = 'string';
+
+    $data['aggregator_feed']['url']['help'] = $this->t('The fully-qualified URL of the feed.');
+
+    $data['aggregator_feed']['link']['help'] = $this->t('The link to the source URL of the feed.');
+
+    $data['aggregator_feed']['checked']['help'] = $this->t('The date the feed was last checked for new content.');
+
+    $data['aggregator_feed']['description']['help'] = $this->t('The description of the aggregator feed.');
+    $data['aggregator_feed']['description']['field']['click sortable'] = FALSE;
+
+    $data['aggregator_feed']['modified']['help'] = $this->t('The date of the most recent new content on the feed.');
+
+    return $data;
+  }
+
+}