You are here

function i18n_menu_overview_parse_menu in Menu per language - i18n menu overview 7.3

Helper function to traverse the menu and set the active trail correctly.

Parameters

$tree:

$current_path:

$current_language:

Return value

bool

1 call to i18n_menu_overview_parse_menu()
i18n_menu_overview_menu_block_tree_alter in ./i18n_menu_overview.module
Because the above isn't sufficient when there are multiple same language links with the same path this is required to check for current domain.

File

./i18n_menu_overview.module, line 381
menu language module file displays menus per language

Code

function i18n_menu_overview_parse_menu(&$tree, $current_path, $current_language) {
  foreach ($tree as $link_item => &$link_value) {
    if ($link_value['link']['link_path'] == $current_path) {
      $link_value['link']['in_active_trail'] = TRUE;
      return TRUE;
    }
    if (!empty($link_value['below']) && $link_value['link']['language'] == $current_language) {
      $feedback = i18n_menu_overview_parse_menu($link_value['below'], $current_path, $current_language);

      // Also set parent active_trail.
      if ($feedback) {
        $link_value['link']['in_active_trail'] = TRUE;
      }
    }
  }
}