public function LocaleSettingsForm::submitForm in Drupal 9
Same name and namespace in other branches
- 8 core/modules/locale/src/Form/LocaleSettingsForm.php \Drupal\locale\Form\LocaleSettingsForm::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 ConfigFormBase::submitForm
File
- core/
modules/ locale/ src/ Form/ LocaleSettingsForm.php, line 104
Class
- LocaleSettingsForm
- Configure locale settings for this site.
Namespace
Drupal\locale\FormCode
public function submitForm(array &$form, FormStateInterface $form_state) {
$values = $form_state
->getValues();
$config = $this
->config('locale.settings');
$config
->set('translation.update_interval_days', $values['update_interval_days'])
->save();
$config
->set('translation.use_source', $values['use_source'])
->save();
switch ($values['overwrite']) {
case LOCALE_TRANSLATION_OVERWRITE_ALL:
$config
->set('translation.overwrite_customized', TRUE)
->set('translation.overwrite_not_customized', TRUE)
->save();
break;
case LOCALE_TRANSLATION_OVERWRITE_NON_CUSTOMIZED:
$config
->set('translation.overwrite_customized', FALSE)
->set('translation.overwrite_not_customized', TRUE)
->save();
break;
case LOCALE_TRANSLATION_OVERWRITE_NONE:
$config
->set('translation.overwrite_customized', FALSE)
->set('translation.overwrite_not_customized', FALSE)
->save();
break;
}
// Invalidate the cached translation status when the configuration setting
// of 'use_source' changes.
if ($form['use_source']['#default_value'] != $form_state
->getValue('use_source')) {
locale_translation_clear_status();
}
parent::submitForm($form, $form_state);
}