ezcontent-8.x-dev/modules/ezcontent_block/modules/ezcontent_listing/ezcontent_listing.module
modules/ezcontent_block/modules/ezcontent_listing/ezcontent_listing.module
<?php
/**
* @file
* Used for maintaining content listing component changes.
*/
/**
* Implements hook_preprocess_block().
*/
function ezcontent_listing_preprocess_block(&$variables) {
if (in_array($variables['plugin_id'], [
'content_listing_component',
'inline_block:content_listing_component',
])) {
$routeOptions = \Drupal::routeMatch()->getRouteObject()->getOptions();
$blockContentList = isset($routeOptions['_layout_builder']) || isset($routeOptions['_admin_route']) ? $variables['content']['content'] : $variables['content'];
$block = $blockContentList['#block_content'];
if (isset($blockContentList) && isset($block)) {
$block_type = $block->bundle();
if ($block_type == 'content_listing_component') {
$variables['#attached']['library'][] = 'ezcontent_listing/ezcontent_listing_css';
$block_view_mode = $blockContentList['#view_mode'];
$helper_block_service = \Drupal::service('ezcontent_listing.helper_block');
switch ($block_view_mode) {
case 'full':
$content_list_data = $helper_block_service->getContentListingBlock($block);
if (isset($routeOptions['_layout_builder']) || isset($routeOptions['_admin_route'])) {
$variables['content']['content'] = array_merge($blockContentList, $content_list_data);
}
else {
$variables['content'] = array_merge($blockContentList, $content_list_data);
}
break;
}
}
}
}
}
