You are here

public function TwitterFeedsController::display_feeds in Tweet Feed 4.x

Same name and namespace in other branches
  1. 8.3 src/Controller/TwitterFeedsController.php \Drupal\tweet_feed\Controller\TwitterFeedsController::display_feeds()

display_feeds().

Return value

array Return render array of a table of elements that make up the list of available twitter feeds or an empty list. Designed to be handled by Drupal's configuration management system.

1 string reference to 'TwitterFeedsController::display_feeds'
tweet_feed.routing.yml in ./tweet_feed.routing.yml
tweet_feed.routing.yml

File

src/Controller/TwitterFeedsController.php, line 22

Class

TwitterFeedsController
Class TwitterFeedsController.

Namespace

Drupal\tweet_feed\Controller

Code

public function display_feeds() {
  $config = $this
    ->config('tweet_feed.twitter_feeds');
  $header = [
    [
      'data' => 'Feed Name',
    ],
    [
      'data' => 'Type',
    ],
    [
      'data' => 'Feed Criteria',
    ],
    [
      'data' => '# Per Pull',
    ],
    [
      'data' => 'Edit',
    ],
    [
      'data' => 'Delete',
    ],
  ];
  $rows = [];
  $types = [
    '',
    'Search',
    'Timeline',
    'List',
  ];
  $feeds = $config
    ->get('feeds');
  foreach ($feeds as $key => $feed) {
    $edit_link = Link::createFromRoute($this
      ->t('Edit'), 'tweet_feed.edit_feed', [
      'feed_machine_name' => $key,
    ]);
    $delete_link = Link::createFromRoute($this
      ->t('Delete'), 'tweet_feed.delete_feed', [
      'feed_machine_name' => $key,
    ]);
    $row = [
      [
        'data' => $feed['feed_name'],
      ],
      [
        'data' => $key,
      ],
      [
        'data' => $types[$feed['query_type']],
      ],
      [
        'data' => $feed['pull_count'],
      ],
      [
        'data' => $edit_link,
      ],
      [
        'data' => $delete_link,
      ],
    ];
    $rows[] = $row;
  }
  return [
    '#type' => 'table',
    '#attributes' => [
      'class' => [
        'table table-striped',
      ],
    ],
    '#prefix' => NULL,
    '#header' => $header,
    '#rows' => $rows,
    '#empty' => 'THERE ARE NO TWITTER FEEDS CURRENTLY CREATED.',
  ];
}