function _i18n_menu_tree_filter_items in Internationalization 7
Filter out menu items that have a different language
1 call to _i18n_menu_tree_filter_items()
- i18n_menu_tree_all_data in i18n_menu/
i18n_menu.admin.inc - Filter out menu items that have a different language
File
- i18n_menu/
i18n_menu.admin.inc, line 192 - Helper functions for menu administration.
Code
function _i18n_menu_tree_filter_items($tree, $langcode) {
$result = array();
foreach ($tree as $key => $item) {
$lang = i18n_object_langcode($item['link']);
if (!empty($item['below'])) {
$item['below'] = _i18n_menu_tree_filter_items($item['below'], $langcode);
}
if (!empty($item['link']['customized']) && $lang == $langcode) {
$result[$key] = $item;
}
elseif (!empty($item['below'])) {
// Keep for the tree but mark as unselectable.
$item['link']['title'] = '(' . $item['link']['title'] . ')';
$result[$key] = $item;
}
}
return $result;
}