You are here

public function LanguageNeutralAliasesStorage::getAliasesForAdminListing in Language neutral aliases 8

Loads aliases for admin listing.

Parameters

array $header: Table header.

string|null $keys: (optional) Search keyword that may include one or more '*' as wildcard values.

Return value

array Array of items to be displayed on the current page.

Overrides AliasStorage::getAliasesForAdminListing

File

src/LanguageNeutralAliasesStorage.php, line 109

Class

LanguageNeutralAliasesStorage
Language neutral alias storage.

Namespace

Drupal\language_neutral_aliases

Code

public function getAliasesForAdminListing($header, $keys = NULL) {
  $query = $this->connection
    ->select(static::TABLE)
    ->extend('Drupal\\Core\\Database\\Query\\PagerSelectExtender')
    ->extend('Drupal\\Core\\Database\\Query\\TableSortExtender');
  $query
    ->condition('langcode', LanguageInterface::LANGCODE_NOT_SPECIFIED);
  if ($keys) {

    // Replace wildcards with PDO wildcards.
    $query
      ->condition('alias', '%' . preg_replace('!\\*+!', '%', $keys) . '%', 'LIKE');
  }
  try {
    return $query
      ->fields(static::TABLE)
      ->orderByHeader($header)
      ->limit(50)
      ->execute()
      ->fetchAll();
  } catch (\Exception $e) {
    $this
      ->catchException($e);
    return [];
  }
}