You are here

public function FilterBlock::preBlockBuild in Open Social 10.0.x

Same name and namespace in other branches
  1. 10.3.x modules/social_features/social_activity/modules/social_activity_filter/src/Plugin/views/display/FilterBlock.php \Drupal\social_activity_filter\Plugin\views\display\FilterBlock::preBlockBuild()
  2. 10.1.x modules/social_features/social_activity/modules/social_activity_filter/src/Plugin/views/display/FilterBlock.php \Drupal\social_activity_filter\Plugin\views\display\FilterBlock::preBlockBuild()
  3. 10.2.x modules/social_features/social_activity/modules/social_activity_filter/src/Plugin/views/display/FilterBlock.php \Drupal\social_activity_filter\Plugin\views\display\FilterBlock::preBlockBuild()

Allows to change the display settings right before executing the block.

Parameters

\Drupal\views\Plugin\Block\ViewsBlock $block: The block plugin for views displays.

Overrides ModeBlock::preBlockBuild

File

modules/social_features/social_activity/modules/social_activity_filter/src/Plugin/views/display/FilterBlock.php, line 265

Class

FilterBlock
The plugin that handles a block.

Namespace

Drupal\social_activity_filter\Plugin\views\display

Code

public function preBlockBuild(ViewsBlock $block) {
  parent::preBlockBuild($block);

  // Prepare values to use it in the views filter.
  $block_configuration = $block
    ->getConfiguration();
  if (isset($block_configuration['tags'])) {
    $this->view->filter_tags = $block_configuration['tags'];
  }
  $taxonomy_fields = $this->configFactory
    ->getEditable('social_activity_filter.settings')
    ->get('taxonomy_fields');
  $vid = $block_configuration['vocabulary'];
  if (!empty($taxonomy_fields[$vid])) {
    $this->view->filter_vocabulary = $taxonomy_fields[$vid];
  }
  else {
    $this->view->filter_vocabulary = '';
  }
}