private static function UpdateLayoutRequestHandler::updatePanelsDisplay in Panels 8.4
Same name and namespace in other branches
- 8.3 panels_ipe/src/Helpers/UpdateLayoutRequestHandler.php \Drupal\panels_ipe\Helpers\UpdateLayoutRequestHandler::updatePanelsDisplay()
Updates the current Panels display based on the changes done in our app.
Parameters
\Drupal\panels\Plugin\DisplayVariant\PanelsDisplayVariant $panels_display: The current Panels display.
array $layout_model: The decoded LayoutModel from our App.
Return value
\Drupal\panels\Plugin\DisplayVariant\PanelsDisplayVariant
1 call to UpdateLayoutRequestHandler::updatePanelsDisplay()
- UpdateLayoutRequestHandler::updateLayout in panels_ipe/
src/ Helpers/ UpdateLayoutRequestHandler.php - Changes the layout for the given Panels Display.
File
- panels_ipe/
src/ Helpers/ UpdateLayoutRequestHandler.php, line 49
Class
Namespace
Drupal\panels_ipe\HelpersCode
private static function updatePanelsDisplay(PanelsDisplayVariant $panels_display, array $layout_model) {
// Set our weight and region based on the metadata in our Backbone app.
foreach ($layout_model['regionCollection'] as $region) {
$weight = 0;
foreach ($region['blockCollection'] as $block) {
/** @var \Drupal\Core\Block\BlockBase $block_instance */
$block_instance = $panels_display
->getBlock($block['uuid']);
$block_instance
->setConfigurationValue('region', $region['name']);
$block_instance
->setConfigurationValue('weight', ++$weight);
$panels_display
->updateBlock($block['uuid'], $block_instance
->getConfiguration());
}
}
return $panels_display;
}