public ModulesListConfirmForm::submitForm(array &$form, FormStateInterface $form_state)
Form submission handler.
Parameters
array $form: An associative array containing the structure of the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Overrides FormInterface::submitForm
File
- core/modules/system/src/Form/ModulesListConfirmForm.php, line 159
Class
- ModulesListConfirmForm
- Builds a confirmation form for enabling modules with dependencies.
Namespace
Drupal\system\Form
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | public function submitForm( array & $form , FormStateInterface $form_state ) { // Remove the key value store entry. $account = $this ->currentUser()->id(); $this ->keyValueExpirable-> delete ( $account ); if (! empty ( $this ->modules[ 'install' ])) { // Don't catch the exception that this can throw for missing dependencies: // the form doesn't allow modules with unmet dependencies, so the only way // this can happen is if the filesystem changed between form display and // submit, in which case the user has bigger problems. try { // Install the given modules. $this ->moduleInstaller->install( array_keys ( $this ->modules[ 'install' ])); } catch (PreExistingConfigException $e ) { $config_objects = $e ->flattenConfigObjects( $e ->getConfigObjects()); drupal_set_message( $this ->formatPlural( count ( $config_objects ), 'Unable to install @extension, %config_names already exists in active configuration.' , 'Unable to install @extension, %config_names already exist in active configuration.' , array ( '%config_names' => implode( ', ' , $config_objects ), '@extension' => $this ->modules[ 'install' ][ $e ->getExtension()] )), 'error' ); return ; } catch (UnmetDependenciesException $e ) { drupal_set_message( $e ->getTranslatedMessage( $this ->getStringTranslation(), $this ->modules[ 'install' ][ $e ->getExtension()]), 'error' ); return ; } $module_names = array_values ( $this ->modules[ 'install' ]); drupal_set_message( $this ->formatPlural( count ( $module_names ), 'Module %name has been enabled.' , '@count modules have been enabled: %names.' , array ( '%name' => $module_names [0], '%names' => implode( ', ' , $module_names ), ))); } $form_state ->setRedirectUrl( $this ->getCancelUrl()); } |
Please login to continue.