diff --git a/entityqueue.links.contextual.yml b/entityqueue.links.contextual.yml index 03aec72..38ffb0f 100644 --- a/entityqueue.links.contextual.yml +++ b/entityqueue.links.contextual.yml @@ -1,4 +1,4 @@ entity.entity_subqueue.edit_form: title: 'Edit subqueue' + group: entityqueue route_name: entity.entity_subqueue.edit_form - group: entityqueue \ No newline at end of file diff --git a/entityqueue.module b/entityqueue.module index d6c8c6a..f26f980 100644 --- a/entityqueue.module +++ b/entityqueue.module @@ -46,25 +46,18 @@ function entityqueue_views_pre_render(ViewExecutable $view) { $relationships = $view->relationship; foreach ($relationships as $relationship) { if ($relationship->field == 'entityqueue_relationship') { - if (is_array($relationship->options['limit_queue'])) { - $referenced_subqueues = $relationship->options['limit_queue']; - } - else { - $referenced_subqueues = [$relationship->options['limit_queue']]; - } - if (!empty($referenced_subqueues)) { - // Contextual links can handle only one set of links coming from a module, - // so we'll have to settle for the first referenced queue. - $subqueue = EntitySubqueue::load(reset($referenced_subqueues)); - if ($subqueue) { - $route_parameters = [ - 'entity_queue' => $subqueue->getQueue()->id(), - 'entity_subqueue' => $subqueue->id(), - ]; - $view->element['#contextual_links']['entityqueue'] = [ - 'route_parameters' => $route_parameters, - ]; - } + $referenced_subqueues = (array) $relationship->options['limit_queue']; + + // Contextual links can handle only one set of links coming from a module, + // so we'll have to settle for the first referenced queue. + if (!empty($referenced_subqueues) && ($subqueue = EntitySubqueue::load(reset($referenced_subqueues)))) { + $route_parameters = [ + 'entity_queue' => $subqueue->getQueue()->id(), + 'entity_subqueue' => $subqueue->id(), + ]; + $view->element['#contextual_links']['entityqueue'] = [ + 'route_parameters' => $route_parameters, + ]; } } }