function _me_check_path in me aliases 8
Same name and namespace in other branches
- 6.2 me.module \_me_check_path()
- 6 me.module \_me_check_path()
- 7 me.module \_me_check_path()
Helper function to check if a path can be rewritten or not.
By this stage, the path is already rewritten, so we need to reverse the process.
Parameters
&$link: The link object to check.
1 call to _me_check_path()
- me_preprocess_menu_link in ./
me.module - Implementaiton of moduleName_preprocess_hook() for theme_menu_link.
File
- ./
me.module, line 61 - Provides 'me' aliases to allow users to enter 'me' in common paths instead of their user id.
Code
function _me_check_path(&$link) {
// If the link has been rewritten, and we are not supposed to be handling this
// path, then rewite it back to its original.
if (isset($link['#href']) && me_variable_get('me_rewrite_link') && !_me_handle_path($link['#href'])) {
$path_parts = explode('/', $link['#href'], MENU_MAX_PARTS);
// The wildcarded path will either be in $link['path'], or $link['router_path'].
$wild_parts = explode('/', isset($link['#original_link']['link_path']) ? $link['#original_link']['link_path'] : $link['#original_link']['router_path'], MENU_MAX_PARTS);
// Go over each of the path parts and if one is equal to the me alias, make sure it is a wildcard,
// and if so, switch it back out.
foreach ($path_parts as $key => $val) {
if (_me_is_alias($val) && $wild_parts[$key] == '%') {
$path_parts[$key] = $GLOBALS['user']->uid;
}
}
$link['#href'] = implode('/', $path_parts);
$link['#original_link']['href'] = implode('/', $path_parts);
}
}