function _advanced_menu_submenu_cache_recursive in Advanced Menu 7
Recursive helper function for menu cache.
1 call to _advanced_menu_submenu_cache_recursive()
- _advanced_menu_submenu_cache in submenu/
advanced_menu_submenu.module  - Helper function to update menu cache for block display.
 
File
- submenu/
advanced_menu_submenu.module, line 193  - Provides advanced menu submenus.
 
Code
function _advanced_menu_submenu_cache_recursive($menu_item) {
  $new_items = $menu_item;
  if (isset($menu_item['link']) && $menu_item['link']['router_path'] == 'advanced-menus/sub-menus/%') {
    $original_path = explode('/', $menu_item['link']['link_path']);
    $alter_path = array_pop($original_path);
    $original_path = implode('/', $original_path);
    $new_items = menu_tree_all_data($alter_path);
  }
  if (isset($new_items['below'])) {
    $below = array();
    foreach ($new_items['below'] as $key => $menu) {
      if (isset($menu['link']) && $menu['link']['router_path'] == 'advanced-menus/sub-menus/%') {
        $below = _advanced_menu_submenu_cache_recursive($menu);
      }
    }
    if (!empty($below)) {
      $new_items['below'] = $below;
    }
  }
  return $new_items;
}