function ckeditor_media_embed_requirements in CKEditor Media Embed Plugin 8
Implements hook_requirements().
File
- ./
ckeditor_media_embed.install, line 26 - Install file for the CKEditor Media Embed plugin module.
Code
function ckeditor_media_embed_requirements($phase) {
$requirements = [];
if ($phase === 'runtime') {
$library_discovery = \Drupal::service('library.discovery');
$config_factory = \Drupal::service('config.factory');
$version = AssetManager::getPluginsVersion($library_discovery, $config_factory);
$plugin_statuses = AssetManager::getPluginsInstallStatuses($version);
$installed_plugins = array_filter($plugin_statuses);
$missing_plugins = array_filter($plugin_statuses, function ($is_installed) {
return !$is_installed;
});
$mixed_version = $version != AssetManager::getCKEditorVersion($library_discovery, $config_factory);
$has_error = !empty($missing_plugins) || $mixed_version ? TRUE : FALSE;
$value = t('Installed');
if (!empty($missing_plugins)) {
$value = t('Missing plugins');
}
elseif ($mixed_version) {
$value = t('Mixed versions');
}
$requirements["ckeditor_media_embed"] = [
'title' => 'CKEditor Media Embed plugin',
'value' => $value,
'description' => _ckeditor_media_embed_requirments_build_description($installed_plugins, $missing_plugins, $mixed_version),
'severity' => $has_error ? REQUIREMENT_ERROR : REQUIREMENT_INFO,
];
}
return $requirements;
}