public function SimplesitemapEnginesForm::submitForm in Simple XML sitemap 8.3
Same name and namespace in other branches
- 4.x modules/simple_sitemap_engines/src/Form/SimplesitemapEnginesForm.php \Drupal\simple_sitemap_engines\Form\SimplesitemapEnginesForm::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
- modules/
simple_sitemap_engines/ src/ Form/ SimplesitemapEnginesForm.php, line 147
Class
- SimplesitemapEnginesForm
- Form for managing search engine submission settings.
Namespace
Drupal\simple_sitemap_engines\FormCode
public function submitForm(array &$form, FormStateInterface $form_state) {
foreach ($this->entityTypeManager
->getStorage('simple_sitemap_engine')
->loadMultiple() as $engine_id => $engine) {
if (!empty($values = $form_state
->getValue([
'engines',
$engine_id,
'variants',
]))) {
$submit = TRUE;
}
$engine->sitemap_variants = $values;
$engine
->save();
}
$config = $this
->config('simple_sitemap_engines.settings');
$enabled = (bool) $form_state
->getValue([
'settings',
'enabled',
]);
$config
->set('enabled', $enabled);
$config
->set('submission_interval', $form_state
->getValue([
'settings',
'submission_interval',
]));
$config
->save();
if ($enabled && empty($submit)) {
$this
->messenger()
->addWarning($this
->t('No sitemap variants have been selected for submission.'));
}
parent::submitForm($form, $form_state);
}