You are here

multiversion.install in Multiversion 8.2

Same filename and directory in other branches
  1. 8 multiversion.install

File

multiversion.install
View source
<?php

/**
 * Implements hook_requirements().
 */
function multiversion_requirements($phase) {
  $requirements = [];
  if ($phase === 'runtime') {
    $enabled_entity_types = \Drupal::configFactory()
      ->getEditable('multiversion.settings')
      ->get('enabled_entity_types', []);
    if (!empty($enabled_entity_types)) {
      $value = implode(', ', $enabled_entity_types);
      $requirements['converted_entity_types'] = [
        'title' => t('Multiversion'),
        'value' => t('Multiversionable entity types: %list', [
          '%list' => $value,
        ]),
        'description' => t('Entity types that have been converted to multiversionable.'),
        'severity' => REQUIREMENT_INFO,
      ];
    }
    $failed_entity_types = \Drupal::state()
      ->get('multiversion.failed_entity_types', []);
    if (!empty($failed_entity_types)) {
      $value = implode(', ', $failed_entity_types);
      $requirements['failed_entity_types'] = [
        'title' => t('Multiversion'),
        'value' => t('Failed entity types: %list', [
          '%list' => $value,
        ]),
        'description' => t('Conversion to multiversionable failed for the entity types listed here.'),
        'severity' => REQUIREMENT_WARNING,
      ];
    }
  }
  return $requirements;
}

/**
 * Implements hook_install().
 */
function multiversion_install() {

  /** @var \Drupal\multiversion\MultiversionManagerInterface $manager */
  $manager = \Drupal::getContainer()
    ->get('multiversion.manager');
  $manager
    ->enableEntityTypes();
}

/**
 * Implements hook_uninstall().
 */
function multiversion_uninstall() {
  \Drupal::state()
    ->delete('multiversion_enabled');
}