updated core from 8.4 to 8.5 : bug with login_destination
This commit is contained in:
@@ -13,6 +13,7 @@ use Drupal\Core\Form\FormStateInterface;
|
||||
use Drupal\Core\Routing\RouteMatchInterface;
|
||||
use Drupal\Core\Url;
|
||||
use Drupal\views\Plugin\Derivative\ViewsLocalTask;
|
||||
use Drupal\views\ViewEntityInterface;
|
||||
use Drupal\views\ViewExecutable;
|
||||
use Drupal\views\Entity\View;
|
||||
use Drupal\views\Render\ViewsRenderPipelineMarkup;
|
||||
@@ -861,3 +862,40 @@ function views_view_delete(EntityInterface $entity) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Implements hook_view_presave().
|
||||
*
|
||||
* Provides a BC layer for modules providing old configurations.
|
||||
*/
|
||||
function views_view_presave(ViewEntityInterface $view) {
|
||||
$displays = $view->get('display');
|
||||
$changed = FALSE;
|
||||
foreach ($displays as $display_name => &$display) {
|
||||
if (isset($display['display_options']['fields'])) {
|
||||
foreach ($display['display_options']['fields'] as $field_name => &$field) {
|
||||
if (isset($field['plugin_id']) && $field['plugin_id'] === 'entity_link') {
|
||||
// Add any missing settings for entity_link.
|
||||
if (!isset($field['output_url_as_text'])) {
|
||||
$field['output_url_as_text'] = FALSE;
|
||||
$changed = TRUE;
|
||||
}
|
||||
if (!isset($field['absolute'])) {
|
||||
$field['absolute'] = FALSE;
|
||||
$changed = TRUE;
|
||||
}
|
||||
}
|
||||
elseif (isset($field['plugin_id']) && $field['plugin_id'] === 'node_path') {
|
||||
// Convert the use of node_path to entity_link.
|
||||
$field['plugin_id'] = 'entity_link';
|
||||
$field['field'] = 'view_node';
|
||||
$field['output_url_as_text'] = TRUE;
|
||||
$changed = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($changed) {
|
||||
$view->set('display', $displays);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user