You are here

function entity_usage_install in Entity Usage 8.3

Implements hook_install().

File

./entity_usage.install, line 98
Install, update and uninstall functions for entity_usage module.

Code

function entity_usage_install() {

  // Start with 'node' and 'media' entities having the usage tabs enabled.
  $entity_usage_config = \Drupal::configFactory()
    ->getEditable('entity_usage.settings');
  $tabs_enabled = $entity_usage_config
    ->get('local_task_enabled_entity_types');
  $module_handler = \Drupal::moduleHandler();
  $modified = FALSE;
  if ($module_handler
    ->moduleExists('node') && !in_array('node', $tabs_enabled)) {
    $tabs_enabled[] = 'node';
    $modified = TRUE;
  }
  if ($module_handler
    ->moduleExists('media') && !in_array('media', $tabs_enabled)) {
    $tabs_enabled[] = 'media';
    $modified = TRUE;
  }
  if ($modified) {
    $entity_usage_config
      ->set('local_task_enabled_entity_types', $tabs_enabled)
      ->save(TRUE);
  }

  // Start with all top-level types being tracked as source.
  $top_level_types = EntityUsageSourceLevel::getTopLevelEntityTypes();
  if (!empty($top_level_types)) {
    $entity_usage_config
      ->set('track_enabled_source_entity_types', $top_level_types)
      ->save(TRUE);
  }
}