You are here

public function ConfigSubscriber::onConfigSave in Search API Solr 8.2

Same name and namespace in other branches
  1. 8.3 src/EventSubscriber/ConfigSubscriber.php \Drupal\search_api_solr\EventSubscriber\ConfigSubscriber::onConfigSave()
  2. 4.x src/EventSubscriber/ConfigSubscriber.php \Drupal\search_api_solr\EventSubscriber\ConfigSubscriber::onConfigSave()

Installs all available Solr Field Types for a new language.

Parameters

\Drupal\Core\Config\ConfigCrudEvent $event:

File

src/EventSubscriber/ConfigSubscriber.php, line 44

Class

ConfigSubscriber
Provides a ConfigSubscriber that adds language-specific Solr Field Types.

Namespace

Drupal\search_api_solr\EventSubscriber

Code

public function onConfigSave(ConfigCrudEvent $event) {
  $saved_config = $event
    ->getConfig();
  if (preg_match('@^language\\.entity\\.(.+)@', $saved_config
    ->getName(), $matches) && $matches[1] != 'und') {
    $restrict_by_dependency = [
      'module' => 'search_api_solr',
    ];

    // installOptionalConfig will not replace existing configs and it contains
    // a dependency check so we need not perform any checks ourselves.
    $this->configInstaller
      ->installOptionalConfig(NULL, $restrict_by_dependency);
  }

  // @todo alert to trigger new config when an index is added => context
}