You are here

field_group.install in Field Group 8.3

Same filename and directory in other branches
  1. 7.2 field_group.install
  2. 7 field_group.install

Update hooks for the Field Group module.

File

field_group.install
View source
<?php

/**
 * @file
 * Update hooks for the Field Group module.
 */

/**
 * Implements hook_requirements().
 */
function field_group_requirements($phase) {
  $requirements = [];
  if ($phase == 'runtime') {

    // Check jQuery UI Accordion module for D9.
    if (version_compare(\Drupal::VERSION, 9) > 0) {
      if (!\Drupal::moduleHandler()
        ->moduleExists('jquery_ui_accordion')) {
        $requirements['field_group_jquery_ui_accordion'] = [
          'title' => t('Field Group'),
          'value' => t('jQuery UI Accordion not enabled'),
          'description' => t('If you want to use the Field Group accordion formatter, you will need to install the <a href=":link" target="_blank">jQuery UI Accordion</a> module.', [
            ':link' => 'https://www.drupal.org/project/jquery_ui_accordion',
          ]),
          'severity' => REQUIREMENT_WARNING,
        ];
      }
      else {
        $requirements['field_group_jquery_ui_accordion'] = [
          'title' => t('Field Group'),
          'description' => t('The jQuery UI Accordion module is installed'),
          'severity' => REQUIREMENT_INFO,
        ];
      }
    }
  }
  return $requirements;
}

/**
 * Removed in favor of hook_post_update script.
 */
function field_group_update_8301() {

  // @see field_group_post_update_0001().
}

/**
 * Install the 'jquery_ui_accordion' module if it exists.
 */
function field_group_update_8302() {
  try {

    // Enables the jQuery UI accordion module if it exists.
    if (\Drupal::service('extension.list.module')
      ->getName('jquery_ui_accordion')) {
      \Drupal::service('module_installer')
        ->install([
        'jquery_ui_accordion',
      ], TRUE);
      return t('The "jquery_ui_accordion" module has been installed.');
    }
  } catch (\Exception $e) {
    return t('If you want to use the Field Group accordion formatter, you will need to install the <a href=":link" target="_blank">jQuery UI Accordion</a> module.', [
      ':link' => 'https://www.drupal.org/project/jquery_ui_accordion',
    ]);
  }
}

Functions

Namesort descending Description
field_group_requirements Implements hook_requirements().
field_group_update_8301 Removed in favor of hook_post_update script.
field_group_update_8302 Install the 'jquery_ui_accordion' module if it exists.