function ModulesListForm::groupDependenciesByParent

Same name and namespace in other branches
  1. main core/modules/system/src/Form/ModulesListForm.php \Drupal\system\Form\ModulesListForm::groupDependenciesByParent()

Group added dependencies under the modules that require them.

Parameters

array $selected: The selected modules.

mixed $modules: The modules array.

array $data: The module extension list data.

Return value

array The modules array.

1 call to ModulesListForm::groupDependenciesByParent()
ModulesListForm::buildModuleList in core/modules/system/src/Form/ModulesListForm.php
Helper function for building a list of modules to install.

File

core/modules/system/src/Form/ModulesListForm.php, line 555

Class

ModulesListForm
Provides module installation interface.

Namespace

Drupal\system\Form

Code

protected function groupDependenciesByParent($selected, $modules, $data) : array {
  $added_dependencies = array_diff_key($modules['install'], array_flip($selected));
  foreach (array_keys($modules['install']) as $module) {
    foreach (array_keys($data[$module]->requires) as $dependency) {
      if (isset($added_dependencies[$dependency])) {
        $modules['dependencies'][$module][$dependency] = $modules['install'][$dependency];
      }
    }
  }
  return $modules;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.