AggregatorFeedViewsData.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace Drupal\aggregator;
  3. use Drupal\views\EntityViewsData;
  4. /**
  5. * Provides the views data for the aggregator feed entity type.
  6. */
  7. class AggregatorFeedViewsData extends EntityViewsData {
  8. /**
  9. * {@inheritdoc}
  10. */
  11. public function getViewsData() {
  12. $data = parent::getViewsData();
  13. $data['aggregator_feed']['table']['join'] = [
  14. 'aggregator_item' => [
  15. 'left_field' => 'fid',
  16. 'field' => 'fid',
  17. ],
  18. ];
  19. $data['aggregator_feed']['fid']['help'] = $this->t('The unique ID of the aggregator feed.');
  20. $data['aggregator_feed']['fid']['argument']['id'] = 'aggregator_fid';
  21. $data['aggregator_feed']['fid']['argument']['name field'] = 'title';
  22. $data['aggregator_feed']['fid']['argument']['numeric'] = TRUE;
  23. $data['aggregator_feed']['fid']['filter']['id'] = 'numeric';
  24. $data['aggregator_feed']['title']['help'] = $this->t('The title of the aggregator feed.');
  25. $data['aggregator_feed']['title']['field']['default_formatter'] = 'aggregator_title';
  26. $data['aggregator_feed']['argument']['id'] = 'string';
  27. $data['aggregator_feed']['url']['help'] = $this->t('The fully-qualified URL of the feed.');
  28. $data['aggregator_feed']['link']['help'] = $this->t('The link to the source URL of the feed.');
  29. $data['aggregator_feed']['checked']['help'] = $this->t('The date the feed was last checked for new content.');
  30. $data['aggregator_feed']['description']['help'] = $this->t('The description of the aggregator feed.');
  31. $data['aggregator_feed']['description']['field']['click sortable'] = FALSE;
  32. $data['aggregator_feed']['modified']['help'] = $this->t('The date of the most recent new content on the feed.');
  33. return $data;
  34. }
  35. }