public function ContentLanguageSettingsForm::submitForm in Drupal 9
Same name and namespace in other branches
- 8 core/modules/language/src/Form/ContentLanguageSettingsForm.php \Drupal\language\Form\ContentLanguageSettingsForm::submitForm()
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/ language/ src/ Form/ ContentLanguageSettingsForm.php, line 166
Class
- ContentLanguageSettingsForm
- Configure the content language settings for this site.
Namespace
Drupal\language\FormCode
public function submitForm(array &$form, FormStateInterface $form_state) {
$entity_types = $form_state
->getValue('entity_types');
foreach ($form_state
->getValue('settings') as $entity_type => $entity_settings) {
foreach ($entity_settings as $bundle => $bundle_settings) {
$config = ContentLanguageSettings::loadByEntityTypeBundle($entity_type, $bundle);
if (empty($entity_types[$entity_type])) {
$bundle_settings['settings']['language']['language_alterable'] = FALSE;
}
$config
->setDefaultLangcode($bundle_settings['settings']['language']['langcode'])
->setLanguageAlterable($bundle_settings['settings']['language']['language_alterable'])
->save();
}
}
$this
->messenger()
->addStatus($this
->t('Settings successfully updated.'));
}