Loading facets_block.post_update.php 0 → 100644 +30 −0 Original line number Diff line number Diff line <?php /** * @file * Post update functions for Facets block. */ use Drupal\block\BlockInterface; use Drupal\Core\Config\Entity\ConfigEntityUpdater; /** * Simplify facets_to_include list. */ function facets_block_post_update_simplify_facets_to_include(&$sandbox = NULL) { // Check if the block module is enabled first. if (!\Drupal::moduleHandler()->moduleExists('block')) { return; } \Drupal::classResolver(ConfigEntityUpdater::class) ->update($sandbox, 'block', function (BlockInterface $block) { if ($block->getPluginId() === 'facets_block') { $block_settings = $block->get('settings'); $block_settings['facets_to_include'] = array_values(array_filter($block_settings['facets_to_include'])); $block->set('settings', $block_settings); return TRUE; } return FALSE; }); } src/Plugin/Block/FacetsBlock.php +3 −5 Original line number Diff line number Diff line Loading @@ -201,10 +201,10 @@ class FacetsBlock extends BlockBase implements ContainerFactoryPluginInterface { 'block_settings', 'hide_empty_block', ]); $this->configuration['facets_to_include'] = $form_state->getValue([ $this->configuration['facets_to_include'] = array_values(array_filter($form_state->getValue([ 'block_settings', 'facets_to_include', ]); ]))); $this->configuration['add_js_classes'] = $form_state->getValue([ 'block_settings', 'add_js_classes', Loading @@ -227,8 +227,7 @@ class FacetsBlock extends BlockBase implements ContainerFactoryPluginInterface { $available_facets = $this->getAvailableFacets(); foreach ($available_facets as $plugin_id => $facet_title) { if (isset($facets_to_include[$plugin_id]) && $facets_to_include[$plugin_id] === $plugin_id) { foreach (array_intersect_key($available_facets, array_combine($facets_to_include, $facets_to_include)) as $plugin_id => $facet_title) { $block_plugin = $this->pluginManagerBlock->createInstance($plugin_id, []); if ($block_plugin && $block_plugin->access($this->currentUser)) { Loading Loading @@ -265,7 +264,6 @@ class FacetsBlock extends BlockBase implements ContainerFactoryPluginInterface { ]; } } } return $facets; } Loading Loading
facets_block.post_update.php 0 → 100644 +30 −0 Original line number Diff line number Diff line <?php /** * @file * Post update functions for Facets block. */ use Drupal\block\BlockInterface; use Drupal\Core\Config\Entity\ConfigEntityUpdater; /** * Simplify facets_to_include list. */ function facets_block_post_update_simplify_facets_to_include(&$sandbox = NULL) { // Check if the block module is enabled first. if (!\Drupal::moduleHandler()->moduleExists('block')) { return; } \Drupal::classResolver(ConfigEntityUpdater::class) ->update($sandbox, 'block', function (BlockInterface $block) { if ($block->getPluginId() === 'facets_block') { $block_settings = $block->get('settings'); $block_settings['facets_to_include'] = array_values(array_filter($block_settings['facets_to_include'])); $block->set('settings', $block_settings); return TRUE; } return FALSE; }); }
src/Plugin/Block/FacetsBlock.php +3 −5 Original line number Diff line number Diff line Loading @@ -201,10 +201,10 @@ class FacetsBlock extends BlockBase implements ContainerFactoryPluginInterface { 'block_settings', 'hide_empty_block', ]); $this->configuration['facets_to_include'] = $form_state->getValue([ $this->configuration['facets_to_include'] = array_values(array_filter($form_state->getValue([ 'block_settings', 'facets_to_include', ]); ]))); $this->configuration['add_js_classes'] = $form_state->getValue([ 'block_settings', 'add_js_classes', Loading @@ -227,8 +227,7 @@ class FacetsBlock extends BlockBase implements ContainerFactoryPluginInterface { $available_facets = $this->getAvailableFacets(); foreach ($available_facets as $plugin_id => $facet_title) { if (isset($facets_to_include[$plugin_id]) && $facets_to_include[$plugin_id] === $plugin_id) { foreach (array_intersect_key($available_facets, array_combine($facets_to_include, $facets_to_include)) as $plugin_id => $facet_title) { $block_plugin = $this->pluginManagerBlock->createInstance($plugin_id, []); if ($block_plugin && $block_plugin->access($this->currentUser)) { Loading Loading @@ -265,7 +264,6 @@ class FacetsBlock extends BlockBase implements ContainerFactoryPluginInterface { ]; } } } return $facets; } Loading