Implements hook_uninstall().
function locale_uninstall() {
$config = config('locale.settings');
// Delete all JavaScript translation files.
$locale_js_directory = 'public://' . $config
->get('javascript.directory');
if (is_dir($locale_js_directory)) {
$locale_javascripts = Drupal::state()
->get('locale.translation.javascript') ?: array();
foreach ($locale_javascripts as $langcode => $file_suffix) {
if (!empty($file_suffix)) {
file_unmanaged_delete($locale_js_directory . '/' . $langcode . '_' . $file_suffix . '.js');
}
}
// Delete the JavaScript translations directory if empty.
if (!file_scan_directory($locale_js_directory, '/.*/')) {
drupal_rmdir($locale_js_directory);
}
}
// Clear variables.
Drupal::state()
->delete('system.javascript_parsed');
Drupal::state()
->delete('locale.translation.plurals');
Drupal::state()
->delete('locale.translation.javascript');
// Remove all node type language variables. Node module might have been
// enabled, but may be disabled, so use a wildcard delete.
db_delete('variable')
->condition('name', db_like('language_content_type_') . '%', 'LIKE')
->execute();
}