public function MenuLinkContentId::getActiveMenuItem in Menu Item Extras 8.2
Get active menu item.
Parameters
array $menu_level: Menu tree.
string $current_path: Current path.
Return value
\Drupal\Core\Menu\MenuLinkTreeElement|null Active menu item.
1 call to MenuLinkContentId::getActiveMenuItem()
- MenuLinkContentId::getArgument in src/Plugin/ views/ argument_default/ MenuLinkContentId.php 
- Return the default argument.
File
- src/Plugin/ views/ argument_default/ MenuLinkContentId.php, line 161 
Class
- MenuLinkContentId
- Active menu item id default argument.
Namespace
Drupal\menu_item_extras\Plugin\views\argument_defaultCode
public function getActiveMenuItem(array $menu_level, $current_path) {
  $active_item = NULL;
  /** @var \Drupal\Core\Menu\MenuLinkTreeElement[] $menu_level */
  foreach ($menu_level as $menu_item) {
    if ($menu_item->inActiveTrail) {
      /** @var \Drupal\menu_link_content\Plugin\Menu\MenuLinkContent $link */
      $link = $menu_item->link;
      /** @var \Drupal\Core\Url $url_object */
      $url_object = $link
        ->getUrlObject();
      $item_path = $url_object
        ->toString();
      if ($item_path === $current_path) {
        $active_item = $menu_item;
      }
      if ($menu_item->subtree && !$active_item) {
        $active_item = $this
          ->getActiveMenuItem($menu_item->subtree, $current_path);
      }
    }
  }
  return $active_item;
}