function varbase_media_update_8706 in Varbase Media 9.0.x
Same name and namespace in other branches
- 8.7 varbase_media.install \varbase_media_update_8706()
Follow up #3115391: Update all remote videos, set oembed view mode type.
1 call to varbase_media_update_8706()
- varbase_media_update_8707 in ./
varbase_media.install - Issue #3125946: Fix missing varbase media entity presave hook.
File
- ./
varbase_media.install, line 375 - Contains install and update for Varbase Media module.
Code
function varbase_media_update_8706() {
// When the Remote Video media type is active.
$media_bundle_ids = \Drupal::service('entity_type.bundle.info')
->getBundleInfo('media');
if (isset($media_bundle_ids) && is_array($media_bundle_ids) && count($media_bundle_ids) > 0 && isset($media_bundle_ids['remote_video'])) {
$storage = \Drupal::entityTypeManager()
->getStorage('entity_view_display');
$media_view_modes = \Drupal::service('entity_display.repository')
->getViewModes('media');
if (isset($media_view_modes) && is_array($media_view_modes) && count($media_view_modes) > 0) {
$media_view_modes['default'] = 'default';
$media_view_modes = array_keys($media_view_modes);
foreach ($media_view_modes as $key) {
$view_display = $storage
->load('media.remote_video.' . $key);
if (isset($view_display)) {
$config = $view_display
->getComponent('field_media_oembed_video');
if (isset($config['type']) && $config['type'] == 'oembed') {
$config['type'] = 'varbase_oembed';
$view_display
->setComponent('field_media_oembed_video', $config);
$view_display
->save();
}
}
}
}
}
}