public function SectionFormAlter::validateForm in Block Style Plugins 8.2
Validate the section form.
Parameters
array $form: The form definition array for the block configuration form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
File
- src/
SectionFormAlter.php, line 130
Class
- SectionFormAlter
- Base class for Section style plugins.
Namespace
Drupal\block_style_pluginsCode
public function validateForm(array $form, FormStateInterface $form_state) {
// Retrieve a list of possible style plugin definitions.
$available_plugins = $this->blockStyleManager
->getSectionDefinitions();
$style_settings = $form_state
->getValue([
'third_party_settings',
'block_style_plugins',
], []);
foreach ($style_settings as $plugin_id => $settings) {
// Only instantiate plugins that are available.
if (array_key_exists($plugin_id, $available_plugins)) {
/** @var \Drupal\block_style_plugins\Plugin\BlockStyleInterface $style_plugin */
$style_plugin = $this->blockStyleManager
->createInstance($plugin_id);
if ($style_plugin instanceof PluginFormInterface) {
$subform_state = SubformState::createForSubform($form['third_party_settings']['block_style_plugins'][$plugin_id], $form, $form_state);
$style_plugin
->validateConfigurationForm($form['third_party_settings']['block_style_plugins'][$plugin_id], $subform_state);
}
}
}
}