You are here

function lightning_media_media_type_insert in Lightning Media 8.3

Same name and namespace in other branches
  1. 8.4 lightning_media.module \lightning_media_media_type_insert()
  2. 8 lightning_media.module \lightning_media_media_type_insert()
  3. 8.2 lightning_media.module \lightning_media_media_type_insert()

Implements hook_ENTITY_TYPE_insert().

File

./lightning_media.module, line 402
Core media asset support for Lightning.

Code

function lightning_media_media_type_insert(MediaTypeInterface $media_type) {

  // Don't do anything during config sync.
  if (\Drupal::isConfigSyncing()) {
    return;
  }
  \Drupal::entityTypeManager()
    ->getStorage('field_config')
    ->create([
    'field_name' => 'field_media_in_library',
    'entity_type' => 'media',
    'bundle' => $media_type
      ->id(),
    'label' => t('Show in media library'),
    'settings' => [
      'on_label' => t('Shown in media library'),
      'off_label' => t('Hidden in media library'),
    ],
    'default_value' => [
      [
        'value' => TRUE,
      ],
    ],
  ])
    ->save();
  lightning_media_entity_get_form_display('media', $media_type
    ->id())
    ->setComponent('field_media_in_library', [
    'type' => 'boolean_checkbox',
    'settings' => [
      'display_label' => TRUE,
    ],
  ])
    ->save();
}