function views_merge_rows_update_8201 in Views Merge Rows 8.2
Move config from display handler options to display extender.
File
- ./
views_merge_rows.install, line 59
Code
function views_merge_rows_update_8201() {
$config_factory = \Drupal::configFactory();
foreach ($config_factory
->listAll('views.view.') as $view_config_name) {
$view = $config_factory
->getEditable($view_config_name);
$save = FALSE;
foreach ($view
->get('display') as $display_name => $display) {
if (isset($display['display_options']['merge_rows']) || isset($display['display_options']['field_config'])) {
$merge_rows = $display['display_options']['merge_rows'] ?? FALSE;
$field_config = $display['display_options']['field_config'] ?? [];
$display['display_options']['display_extenders']['views_merge_rows'] = [
'merge_rows' => $merge_rows,
'field_config' => $field_config,
];
unset($display['display_options']['merge_rows']);
unset($display['display_options']['field_config']);
$view
->set("display.{$display_name}", $display);
$save = TRUE;
}
}
if ($save) {
$view
->save();
}
}
}