diff --git a/src/Form/XmlSitemapEntitiesSettingsForm.php b/src/Form/XmlSitemapEntitiesSettingsForm.php index 17a9508..cafd231 100644 --- a/src/Form/XmlSitemapEntitiesSettingsForm.php +++ b/src/Form/XmlSitemapEntitiesSettingsForm.php @@ -134,12 +136,13 @@ class XmlSitemapEntitiesSettingsForm extends ConfigFormBase implements Container */ public function submitForm(array &$form, FormStateInterface $form_state) { $bundles = $this->entityManager->getAllBundleInfo(); - $entity_values = $form_state['values']['entity_types']; + $entity_values = $form_state->getValue('entity_types'); $config = $this->config('xmlsitemap.settings'); + $settings = $form_state->getValue('settings'); foreach ($entity_values as $key => $value) { if ($value) { foreach ($bundles[$key] as $bundle_key => $bundle_value) { - if (!$form_state['values']['settings'][$key][$bundle_key]['settings']['bundle']) { + if (!$settings[$key][$bundle_key]['settings']['bundle']) { xmlsitemap_link_bundle_delete($key, $bundle_key, TRUE); } else { diff --git a/src/Form/XmlSitemapForm.php b/src/Form/XmlSitemapForm.php index c8a3554..24d6d39 100644 --- a/src/Form/XmlSitemapForm.php +++ b/src/Form/XmlSitemapForm.php @@ -59,15 +59,18 @@ class XmlSitemapForm extends EntityForm { * {@inheritdoc} */ public function save(array $form, FormStateInterface $form_state) { - if (!isset($form_state['values']['context'])) { - $form_state['values']['context'] = xmlsitemap_get_current_context(); + if (!$form_state->hasValue('context')) { + $form_state->setValue('context', xmlsitemap_get_current_context()); } - if (isset($form_state['values']['context']['language']) && $form_state['values']['context']['language'] == LanguageInterface::LANGCODE_NOT_SPECIFIED) { - unset($form_state['values']['context']['language']); + if ($form_state->hasValue(['context', 'language'])) { + $language = $form_state->getValue(['context', 'language']); + if ($language == LanguageInterface::LANGCODE_NOT_SPECIFIED) { + $form_state->unsetValue(['context', 'language']); + } } - $this->entity->context = $form_state['values']['context']; - $context = $form_state['values']['context']; - $this->entity->label = $form_state['values']['label']; + $context = $form_state->getValue('context'); + $this->entity->context = $context; + $this->entity->label = $form_state->getValue('label'); $this->entity->id = xmlsitemap_sitemap_get_context_hash($context); try { diff --git a/src/Form/XmlSitemapLinkBundleSettingsForm.php b/src/Form/XmlSitemapLinkBundleSettingsForm.php index 6835264..b9a701a 100644 --- a/src/Form/XmlSitemapLinkBundleSettingsForm.php +++ b/src/Form/XmlSitemapLinkBundleSettingsForm.php @@ -112,14 +113,15 @@ class XmlSitemapLinkBundleSettingsForm extends ConfigFormBase implements Contain $entity_info = $form['xmlsitemap']['#entity_info']; if (isset($entity_info['bundle keys']['bundle'])) { $bundle_key = $entity_info['bundle keys']['bundle']; - if (isset($form_state['values'][$bundle_key])) { - $bundle = $form_state['values'][$bundle_key]; + if ($form_state->hasValue($bundle_key)) { + $bundle = $form_state->getValue($bundle_key); $form['xmlsitemap']['#bundle'] = $bundle; } } } - xmlsitemap_link_bundle_settings_save($this->entity_type, $this->bundle_type, $form_state['values']['xmlsitemap'], TRUE); + $xmlsitemap = $form_state->getValue('xmlsitemap'); + xmlsitemap_link_bundle_settings_save($this->entity_type, $this->bundle_type, $xmlsitemap, TRUE); $entity_info = $form['xmlsitemap']['#entity_info']; if (!empty($form['xmlsitemap']['#show_message'])) { @@ -127,9 +129,10 @@ class XmlSitemapLinkBundleSettingsForm extends ConfigFormBase implements Contain } // Unset the form values since we have already saved the bundle settings and - // we don't want these values to get saved as variables in-case this form - // also uses system_settings_form(). - unset($form_state['values']['xmlsitemap']); + // we don't want these values to get saved as configuration, depending on how + // the form saves the form values. + $form_state->unsetValue('xmlsitemap'); + parent::submitForm($form, $form_state); } diff --git a/src/Form/XmlSitemapRebuildForm.php b/src/Form/XmlSitemapRebuildForm.php index 21828a6..614f8c7 100644 --- a/src/Form/XmlSitemapRebuildForm.php +++ b/src/Form/XmlSitemapRebuildForm.php @@ -95,7 +96,9 @@ class XmlSitemapRebuildForm extends ConfigFormBase { */ public function submitForm(array &$form, FormStateInterface $form_state) { // Save any changes to the frontpage link. - $batch = xmlsitemap_rebuild_batch($form_state['values']['entities'], $form_state['values']['save_custom']); + $entities = $form_state->getValue('entities'); + $save_custom = $form_state->getValue('save_custom'); + $batch = xmlsitemap_rebuild_batch($entities, $save_custom); batch_set($batch); $form_state->setRedirect('xmlsitemap.admin_search'); diff --git a/src/Form/XmlSitemapSettingsForm.php b/src/Form/XmlSitemapSettingsForm.php index 412900d..00ad1f2 100644 --- a/src/Form/XmlSitemapSettingsForm.php +++ b/src/Form/XmlSitemapSettingsForm.php @@ -217,13 +217,14 @@ class XmlSitemapSettingsForm extends ConfigFormBase { */ public function validateForm(array &$form, FormStateInterface $form_state) { // Check that the chunk size will not create more than 1000 chunks. - $chunk_size = $form_state['values']['chunk_size']; + $chunk_size = $form_state->getValue('chunk_size'); if ($chunk_size != 'auto' && $chunk_size != 50000 && (xmlsitemap_get_link_count() / $chunk_size) > 1000) { $form_state->setErrorByName('chunk_size', t('The sitemap page link count of @size will create more than 1,000 sitemap pages. Please increase the link count.', array('@size' => $chunk_size))); } - $base_url = &$form_state['values']['xmlsitemap_base_url']; + $base_url = $form_state->getValue('xmlsitemap_base_url'); $base_url = rtrim($base_url, '/'); + $form_state->setValue('xmlsitemap_base_url', $base_url); if ($base_url != '' && !UrlHelper::isValid($base_url, TRUE)) { $form_state->setErrorByName('xmlsitemap_base_url', t('Invalid base URL.')); } @@ -237,7 +238,7 @@ class XmlSitemapSettingsForm extends ConfigFormBase { public function submitForm(array &$form, FormStateInterface $form_state) { // Save any changes to the frontpage link. $config = $this->config('xmlsitemap.settings'); - $values = $form_state['values']; + $values = $form_state->getValues(); if (isset($form['frontpage'])) { $frontpage_priority = $values['xmlsitemap_frontpage_priority']; $frontpage_changefreq = $values['xmlsitemap_frontpage_changefreq']; diff --git a/xmlsitemap.module b/xmlsitemap.module index d40c5f9..6aa95d7 100644 --- a/xmlsitemap.module +++ b/xmlsitemap.module @@ -1069,14 +1069,15 @@ function xmlsitemap_calculate_changefreq($timestamps) { * calls to variable_set(). */ function xmlsitemap_form_submit_flag_regenerate(array $form, FormStateInterface $form_state) { - foreach ($form_state['values'] as $variable => $value) { + $values = $form_state->getValues(); + foreach ($values as $variable => $value) { if (\Drupal::config('xmlsitemap.settings')->get($variable) == NULL) { $stored_value = 'not_a_variable'; } else { $stored_value = \Drupal::config('xmlsitemap.settings')->get($variable); } - if (is_array($value) && !empty($form_state['values']['array_filter'])) { + if (is_array($value) && !$form_state->isValueEmpty('array_filter')) { $value = array_keys(array_filter($value)); } if ($stored_value != 'not_a_variable' && $stored_value != $value) { @@ -1225,7 +1227,7 @@ function xmlsitemap_add_form_link_options(array &$form, $entity, $bundle, $id) { * Submit callback for the entity form to save. */ function xmlsitemap_process_form_link_options(array $form, FormStateInterface $form_state) { - $link = &$form_state['values']['xmlsitemap']; + $link = $form_state->getValue('xmlsitemap'); $fields = array('status' => XMLSITEMAP_STATUS_DEFAULT, 'priority' => XMLSITEMAP_PRIORITY_DEFAULT); foreach ($fields as $field => $default) { @@ -1237,9 +1239,10 @@ function xmlsitemap_process_form_link_options(array $form, FormStateInterface $f $link[$field . '_override'] = 1; } } + $form_state->setValue('xmlsitemap', $link); - $entity = $form_state['controller']->getEntity(); - $entity->xmlsitemap = $form_state['values']['xmlsitemap']; + $entity = $form_state->getFormObject()->getEntity(); + $entity->xmlsitemap = $form_state->getValue('xmlsitemap'); } /** @@ -1255,14 +1258,15 @@ function xmlsitemap_link_bundle_settings_form_submit($form, &$form_state) { $entity_info = $form['xmlsitemap']['#entity_info']; if (isset($entity_info['bundle keys']['bundle'])) { $bundle_key = $entity_info['bundle keys']['bundle']; - if (isset($form_state['values'][$bundle_key])) { - $bundle = $form_state['values'][$bundle_key]; + if ($form_state->hasValue($bundle_key)) { + $bundle = $form_state->getValue($bundle_key); $form['xmlsitemap']['#bundle'] = $bundle; } } } - xmlsitemap_link_bundle_settings_save($entity, $bundle, $form_state['values']['xmlsitemap']); + $xmlsitemap = $form_state->getValue('xmlsitemap'); + xmlsitemap_link_bundle_settings_save($entity, $bundle, $xmlsitemap); $entity_info = $form['xmlsitemap']['#entity_info']; if (!empty($form['xmlsitemap']['#show_message'])) { @@ -1270,9 +1274,9 @@ function xmlsitemap_link_bundle_settings_form_submit($form, &$form_state) { } // Unset the form values since we have already saved the bundle settings and - // we don't want these values to get saved as variables in-case this form - // also uses system_settings_form(). - unset($form_state['values']['xmlsitemap']); + // we don't want these values to get saved as configuration, depending on how + // the form saves the form values. + $form_state->unsetValue('xmlsitemap'); } /** diff --git a/xmlsitemap_custom/src/Form/XmlSitemapCustomAddForm.php b/xmlsitemap_custom/src/Form/XmlSitemapCustomAddForm.php index 1e18d51..8a6fccf 100644 --- a/xmlsitemap_custom/src/Form/XmlSitemapCustomAddForm.php +++ b/xmlsitemap_custom/src/Form/XmlSitemapCustomAddForm.php @@ -160,11 +162,12 @@ class XmlSitemapCustomAddForm extends ConfigFormBase { * {@inheritdoc} */ public function validateForm(array &$form, FormStateInterface $form_state) { - $link = &$form_state['values']; + $link = $form_state->getValues(); // Make sure we trim and normalize the path first. $link['loc'] = trim($link['loc']); $link['loc'] = $this->aliasManager->getPathByAlias($link['loc'], $link['language']); + $form_state->setValue('loc', $link['loc']); $query = db_select('xmlsitemap'); $query->fields('xmlsitemap'); $query->condition('type', 'custom'); @@ -191,7 +194,7 @@ class XmlSitemapCustomAddForm extends ConfigFormBase { * {@inheritdoc} */ public function submitForm(array &$form, FormStateInterface $form_state) { - $link = $form_state['values']; + $link = $form_state->getValues(); $this->linkStorage->save($link); drupal_set_message(t('The custom link for %loc was saved.', array('%loc' => $link['loc']))); diff --git a/xmlsitemap_custom/src/Form/XmlSitemapCustomEditForm.php b/xmlsitemap_custom/src/Form/XmlSitemapCustomEditForm.php index 5ad8942..da1c954 100644 --- a/xmlsitemap_custom/src/Form/XmlSitemapCustomEditForm.php +++ b/xmlsitemap_custom/src/Form/XmlSitemapCustomEditForm.php @@ -181,9 +181,10 @@ class XmlSitemapCustomEditForm extends ConfigFormBase { * {@inheritdoc} */ public function validateForm(array &$form, FormStateInterface $form_state) { - $link = &$form_state['values']; + $link = $form_state->getValues(); $link['loc'] = trim($link['loc']); $link['loc'] = $this->aliasManager->getPathByAlias($link['loc'], $link['language']); + $form_state->setValue('loc', $link['loc']); try { $client = new Client(); $res = $client->get(Url::fromRoute('', [], array('absolute' => TRUE)) . $link['loc']); @@ -196,7 +199,7 @@ class XmlSitemapCustomEditForm extends ConfigFormBase { * {@inheritdoc} */ public function submitForm(array &$form, FormStateInterface $form_state) { - $link = $form_state['values']; + $link = $form_state->getValues(); $this->linkStorage->save($link); drupal_set_message(t('The custom link for %loc was saved.', array('%loc' => $link['loc']))); diff --git a/xmlsitemap_engines/src/Form/XmlSitemapEnginesSettingsForm.php b/xmlsitemap_engines/src/Form/XmlSitemapEnginesSettingsForm.php index f97d467..943df6d 100644 --- a/xmlsitemap_engines/src/Form/XmlSitemapEnginesSettingsForm.php +++ b/xmlsitemap_engines/src/Form/XmlSitemapEnginesSettingsForm.php @@ -119,14 +119,16 @@ class XmlSitemapEnginesSettingsForm extends ConfigFormBase { * {@inheritdoc} */ public function validateForm(array &$form, FormStateInterface $form_state) { - $custom_urls = preg_split('/[\r\n]+/', $form_state['values']['custom_urls'], -1, PREG_SPLIT_NO_EMPTY); + $custom_urls = $form_state->getValue('custom_urls'); + $custom_urls = preg_split('/[\r\n]+/', $custom_urls, -1, PREG_SPLIT_NO_EMPTY); foreach ($custom_urls as $custom_url) { $url = xmlsitemap_engines_prepare_url($custom_url, ''); if (!UrlHelper::isValid($url, TRUE)) { $form_state->setErrorByName($custom_url, t('Invalid URL %url.', array('%url' => $custom_url))); } } - $form_state['values']['custom_urls'] = implode("\n", $custom_urls); + $custom_urls = implode("\n", $custom_urls); + $form_state->setValue('custom_urls', $custom_ruls); parent::validateForm($form, $form_state); } @@ -142,7 +144,7 @@ class XmlSitemapEnginesSettingsForm extends ConfigFormBase { 'xmlsitemap_engines_submit_updated', 'custom_urls' ); - $values = $form_state['values']; + $values = $form_state->getValues(); foreach ($keys as $key) { if (isset($state_variables[$key])) { $this->state->set($key, $values[$key]);