protected function ContentModelUpdater::installFormDisplays in Panopoly 8.2
Install form displays.
1 call to ContentModelUpdater::installFormDisplays()
- ContentModelUpdater::installBundleConfig in modules/
panopoly/ panopoly_media/ src/ Update/ ContentModelUpdater.php - Installs config pertinent to media entity bundles.
File
- modules/
panopoly/ panopoly_media/ src/ Update/ ContentModelUpdater.php, line 256
Class
- ContentModelUpdater
- Applies changes to media content model from schema versions 8204 to 8205.
Namespace
Drupal\panopoly_media\UpdateCode
protected function installFormDisplays() {
// File, copy form display mode.
$existingModes = \Drupal::configFactory()
->listAll('core.entity_form_display.media.file.');
foreach ($existingModes as $configId) {
$config = $this
->getConfigStorage()
->read($configId);
unset($config['uuid']);
$config['id'] = 'media.panopoly_media_file.' . $config['mode'];
$config['bundle'] = 'panopoly_media_file';
$configId = 'core.entity_form_display.' . $config['id'];
$this
->createConfigEntity($configId, $config)
->save();
$this
->updateFormDisplay($config['id']);
}
// Image, copy form display mode.
$existingModes = \Drupal::configFactory()
->listAll('core.entity_form_display.media.image.');
foreach ($existingModes as $configId) {
$config = $this
->getConfigStorage()
->read($configId);
unset($config['uuid']);
$config['id'] = 'media.panopoly_media_image.' . $config['mode'];
$config['bundle'] = 'panopoly_media_image';
$configId = 'core.entity_form_display.' . $config['id'];
$this
->createConfigEntity($configId, $config)
->save();
$this
->updateFormDisplay($config['id']);
}
// Remote video, copy form display mode.
$existingModes = \Drupal::configFactory()
->listAll('core.entity_form_display.media.video.');
foreach ($existingModes as $configId) {
$config = $this
->getConfigStorage()
->read($configId);
unset($config['uuid']);
$config = $this
->swapEmbedFieldDisplay($config, 'form');
$config['id'] = 'media.panopoly_media_remote_video.' . $config['mode'];
$config['bundle'] = 'panopoly_media_remote_video';
$configId = 'core.entity_form_display.' . $config['id'];
$this
->createConfigEntity($configId, $config)
->save();
$this
->updateFormDisplay($config['id']);
}
$this
->installAllOfType('core.entity_form_display.media');
// Set paths for new and old config.
$this
->hideEntityFormPaths('panopoly_media_file');
$this
->hideEntityFormPaths('panopoly_media_image');
$this
->hideEntityFormPaths('panopoly_media_remote_video');
}