function lightning_core_modules_installed in Lightning Core 8.5
Same name and namespace in other branches
- 8 lightning_core.module \lightning_core_modules_installed()
- 8.2 lightning_core.module \lightning_core_modules_installed()
- 8.3 lightning_core.module \lightning_core_modules_installed()
- 8.4 lightning_core.module \lightning_core_modules_installed()
Implements hook_modules_installed().
6 calls to lightning_core_modules_installed()
- HooksTest::testModulesInstalled in tests/
src/ Kernel/ HooksTest.php - lightning_core_install in ./
lightning_core.install - Implements hook_install().
- lightning_core_update_8003 in ./
lightning_core.install - Marks all entity token view modes as internal.
- ModuleInstallTest::testKnownVersion in tests/
src/ Kernel/ ModuleInstallTest.php - ModuleInstallTest::testUnknownDiscoverableVersion in tests/
src/ Kernel/ ModuleInstallTest.php - @depends testKnownVersion
File
- ./
lightning_core.module, line 227 - Contains core functionality for the Lightning distribution.
Code
function lightning_core_modules_installed(array $modules) {
// Don't do anything during config sync.
if (Drupal::isConfigSyncing()) {
return;
}
// Record the semantic version of every module in config.
$versions = Drupal::configFactory()
->getEditable(UpdateManager::CONFIG_NAME);
/** @var \Drupal\lightning_core\UpdateManager $update_manager */
$update_manager = \Drupal::service('lightning.update_manager');
foreach ($modules as $module) {
$versions
->set($module, $update_manager
->getVersion($module));
}
// Sort the list by key.
$versions_sorted = $versions
->getRawData();
ksort($versions_sorted);
$versions
->setData($versions_sorted)
->save();
if (in_array('token', $modules, TRUE)) {
$view_modes = [];
foreach (\Drupal::entityTypeManager()
->getDefinitions() as $entity_type) {
$view_modes[] = $entity_type
->id() . '.token';
}
$storage = Drupal::entityTypeManager()
->getStorage('entity_view_mode');
$view_modes = $storage
->loadMultiple($view_modes);
/** @var \Drupal\Core\Entity\EntityViewModeInterface $view_mode */
foreach ($view_modes as $view_mode) {
$view_mode
->setThirdPartySetting('lightning_core', 'internal', TRUE);
$storage
->save($view_mode);
}
}
}