47 lines
1.6 KiB
PHP
47 lines
1.6 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @file
|
|
* Installation functions for Content Translation module.
|
|
*/
|
|
|
|
use Drupal\Core\Installer\InstallerKernel;
|
|
use Drupal\Core\Url;
|
|
|
|
/**
|
|
* Implements hook_install().
|
|
*/
|
|
function content_translation_install() {
|
|
// Assign a fairly low weight to ensure our implementation of
|
|
// hook_module_implements_alter() is run among the last ones.
|
|
module_set_weight('content_translation', 10);
|
|
|
|
// Skip the guidance messages about enabling translation features if the
|
|
// module was installed in the Drupal installation process.
|
|
if (InstallerKernel::installationAttempted()) {
|
|
return;
|
|
}
|
|
|
|
// Translation works when at least two languages are added.
|
|
if (count(\Drupal::languageManager()->getLanguages()) < 2) {
|
|
$t_args = [
|
|
':language_url' => Url::fromRoute('entity.configurable_language.collection')->toString(),
|
|
];
|
|
$message = t('This site has only a single language enabled. <a href=":language_url">Add at least one more language</a> in order to translate content.', $t_args);
|
|
\Drupal::messenger()->addWarning($message);
|
|
}
|
|
// Point the user to the content translation settings.
|
|
$t_args = [
|
|
':settings_url' => Url::fromRoute('language.content_settings_page')->toString(),
|
|
];
|
|
$message = t('<a href=":settings_url">Enable translation</a> for <em>content types</em>, <em>taxonomy vocabularies</em>, <em>accounts</em>, or any other element you wish to translate.', $t_args);
|
|
\Drupal::messenger()->addWarning($message);
|
|
}
|
|
|
|
/**
|
|
* Implements hook_update_last_removed().
|
|
*/
|
|
function content_translation_update_last_removed() {
|
|
return 8400;
|
|
}
|