You are here

public function GlossaryHelper::glossaryGetter in Search API AZ Glossary 8.4

Same name and namespace in other branches
  1. 8.3 src/Service/GlossaryHelper.php \Drupal\search_api_glossary\Service\GlossaryHelper::glossaryGetter()

Glossary Getter.

Method to determine what Glossary value to set.

Parameters

string $source_value: Field value to be used for Glossary.

array $glossary_az_grouping: What groupings are enabled.

Return value

string Either a Group Name or First letter of the item.

File

src/Service/GlossaryHelper.php, line 56

Class

GlossaryHelper
Search Api Glossary AZ Helper class.

Namespace

Drupal\search_api_glossary\Service

Code

public function glossaryGetter($source_value, array $glossary_az_grouping) {

  // Trim it, then get first letter, then uppercase it.
  $first_letter = mb_strtoupper(mb_substr(trim($source_value), 0, 1));

  // Allow other modules to hook in and alter the first letter.
  $this->moduleHandler
    ->alter('search_api_glossary_source', $first_letter);

  // Finally check groupings and alter the first letter.
  return $this
    ->glossaryGroupName($first_letter, array_values($glossary_az_grouping));
}