function thunder_media_update_8010 in Thunder 8.2
Activate support for responsive images with Blazy.
File
- modules/
thunder_media/ thunder_media.install, line 414 - Contains.
Code
function thunder_media_update_8010() {
/** @var \Drupal\update_helper\Updater $updater */
$updater = \Drupal::service('update_helper.updater');
$updateLogger = $updater
->logger();
// Import image styles.
\Drupal::service('module_installer')
->install([
'config_update',
]);
try {
$configUpdater = \Drupal::service('config_update.config_update');
$configUpdater
->import('responsive_image_style', 'media_image');
$configUpdater
->import('image_style', 'media_image_tablet');
$configUpdater
->import('image_style', 'media_image_mobile');
$configUpdater
->import('slick', 'thunder_gallery');
} catch (\Exception $e) {
$message = t('Responsive image styles was not created.');
$updateLogger
->warning($message);
}
// Expected settings for blazy module.
$expectedBlazySettings['responsive_image'] = FALSE;
// New settings for blazy module.
$newBlazySettings['responsive_image'] = TRUE;
if (\Drupal::moduleHandler()
->moduleExists('blazy') && \Drupal::moduleHandler()
->moduleExists('responsive_image') && _thunder_media_update_config('blazy.settings', $newBlazySettings, $expectedBlazySettings)) {
$updateLogger
->info('The support for responsive images was activated in the Blazy settings.');
}
// Expected configurations for required Video and Image media fields.
$expectedConfigs['core.entity_view_display.media.image.default']['content']['field_image']['settings']['image_style'] = 'media_image';
$expectedConfigs['core.entity_view_display.media.image.default']['content']['field_image']['settings']['responsive_image_style'] = '';
$expectedConfigs['core.entity_view_display.media.gallery.default']['content']['field_media_images']['settings']['optionset'] = 'default';
$expectedConfigs['core.entity_view_display.media.image.slick']['content']['field_image']['settings']['image_style'] = 'gallery';
$expectedConfigs['core.entity_view_display.media.image.slick']['content']['field_image']['settings']['responsive_image_style'] = '';
$expectedConfigs['image.style.media_image']['effects']['21ef239e-0d92-4fcc-84fc-17f4da42ae2f']['data']['width'] = 925;
$expectedConfigs['image.style.media_image']['effects']['21ef239e-0d92-4fcc-84fc-17f4da42ae2f']['data']['height'] = 520;
// Config for required Video and Image media fields.
$newConfigs['core.entity_view_display.media.image.default']['content']['field_image']['settings']['image_style'] = '';
$newConfigs['core.entity_view_display.media.image.default']['content']['field_image']['settings']['responsive_image_style'] = 'media_image';
$newConfigs['core.entity_view_display.media.gallery.default']['content']['field_media_images']['settings']['optionset'] = 'thunder_gallery';
$newConfigs['core.entity_view_display.media.image.slick']['content']['field_image']['settings']['image_style'] = '';
$newConfigs['core.entity_view_display.media.image.slick']['content']['field_image']['settings']['responsive_image_style'] = 'media_image';
$newConfigs['image.style.media_image']['effects']['21ef239e-0d92-4fcc-84fc-17f4da42ae2f']['data']['width'] = 938;
$newConfigs['image.style.media_image']['effects']['21ef239e-0d92-4fcc-84fc-17f4da42ae2f']['data']['height'] = 527;
foreach ($newConfigs as $configName => $newConfig) {
if (!_thunder_media_update_config($configName, $newConfig, $expectedConfigs[$configName])) {
$updateLogger
->warning(t('Unable to update configuration for "@configName".', [
'@configName' => $configName,
]));
}
}
return $updateLogger
->output();
}