localgov_directories-3.3.1/modules/localgov_directories_db/localgov_directories_db.install
modules/localgov_directories_db/localgov_directories_db.install
<?php
/**
* @file
* Contains localgov_directories_db.install.
*/
use Drupal\Component\Serialization\Yaml;
use Drupal\search_api\Entity\Index;
use Drupal\search_api\Entity\Server;
/**
* Implements hook_install().
*/
function localgov_directories_db_install($is_syncing) {
if (
!$is_syncing &&
($index = Index::load('localgov_directories_index_default')) &&
($index->getServerId() == '')
) {
$server = Server::load('localgov_directories_default');
$module_path = \Drupal::service('extension.list.module')->getPath('localgov_directories_db');
$index_config = Yaml::decode(file_get_contents($module_path . '/config/conditional/search_api.index.localgov_directories_index_default.yml'));
$new_config_index = Index::create($index_config);
$index->setProcessors($new_config_index->getProcessors());
$index->setServer($server);
$index->setStatus(TRUE);
$index->save();
}
}
/**
* Implements hook_uninstall().
*/
function localgov_directories_db_uninstall($is_syncing) {
if (
!$is_syncing &&
($index = Index::load('localgov_directories_index_default')) &&
($index->getServerId() == 'localgov_directories_default')
) {
$index->setServer(NULL);
$index->setStatus(FALSE);
$index->save();
}
}
