varbase_internationalization.install in Varbase Core 9.0.x
Contains install and update for Varbase Internationalization module.
File
modules/varbase_internationalization/varbase_internationalization.installView source
<?php
/**
* @file
* Contains install and update for Varbase Internationalization module.
*/
use Symfony\Component\Yaml\Yaml;
use Vardot\Entity\EntityDefinitionUpdateManager;
/**
* Implements hook_install().
*/
function varbase_internationalization_install() {
$module_name = preg_replace('/_install$/', '', __FUNCTION__);
$module_path = Drupal::service('module_handler')
->getModule($module_name)
->getPath();
// Processer for install: in [$module_name].info.yml file.
// ---------------------------------------------------------------------------.
$module_info_file = $module_path . '/' . $module_name . '.info.yml';
if (file_exists($module_info_file)) {
$module_info_data = (array) Yaml::parse(file_get_contents($module_info_file));
if (isset($module_info_data['install']) && is_array($module_info_data['install'])) {
foreach ($module_info_data['install'] as $module) {
if (!\Drupal::moduleHandler()
->moduleExists($module)) {
\Drupal::service('module_installer')
->install([
$module,
], TRUE);
}
}
}
}
// ---------------------------------------------------------------------------
// Entity updates to clear up any mismatched entity and/or field definitions
// And Fix changes were detected in the entity type and field definitions.
\Drupal::classResolver()
->getInstanceFromDefinition(EntityDefinitionUpdateManager::class)
->applyUpdates();
}
/**
* Issue #3032661: Changed [Varbase Internationalization] not to use.
*
* The [Localization client] module by disabling it for old sites and not to
* install it in new Varbase installations.
*/
function varbase_internationalization_update_86001() {
if (\Drupal::moduleHandler()
->moduleExists('l10n_client_ui')) {
\Drupal::service('module_installer')
->uninstall([
'l10n_client_ui',
], FALSE);
}
}
Functions
Name | Description |
---|---|
varbase_internationalization_install | Implements hook_install(). |
varbase_internationalization_update_86001 | Issue #3032661: Changed [Varbase Internationalization] not to use. |