You are here

public function LingotekFilterManager::getSubfilterId in Lingotek Translation 3.5.x

Same name and namespace in other branches
  1. 8.2 src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  2. 4.0.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  3. 3.0.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  4. 3.1.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  5. 3.2.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  6. 3.3.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  7. 3.4.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  8. 3.6.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  9. 3.7.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()
  10. 3.8.x src/LingotekFilterManager.php \Drupal\lingotek\LingotekFilterManager::getSubfilterId()

Gets the subfilter that should be applied.

Given filter provider can take precedence, or the settings default will be applied.

Parameters

\Drupal\lingotek\LingotekFilterProviderInterface|null $profile: A filter provider.

Return value

string The filter ID.

Overrides LingotekFilterManagerInterface::getSubfilterId

File

src/LingotekFilterManager.php, line 127

Class

LingotekFilterManager
Service for managing Lingotek Filters.

Namespace

Drupal\lingotek

Code

public function getSubfilterId(LingotekFilterProviderInterface $profile = NULL) {
  $defaults = new LingotekDefaultFilterProvider();
  $defaultFilter = $defaults
    ->getSubfilter();
  $filter = NULL;
  $settingsFilter = $this
    ->getDefaultSubfilter();
  if ($profile !== NULL && ($profileFilter = $profile
    ->getSubfilter())) {
    switch ($profileFilter) {
      case 'project_default':
        $filter = NULL;
        break;
      case 'drupal_default':
        $filter = $defaultFilter;
        break;
      case 'default':
        $filter = $this
          ->chooseAppropriateFilterID($settingsFilter, $defaultFilter);
        break;
      default:
        $filter = $profileFilter;
        break;
    }
  }
  else {
    $filter = $this
      ->chooseAppropriateFilterID($settingsFilter, $defaultFilter);
  }
  return $filter;
}