diff options
Diffstat (limited to 'engine')
-rw-r--r-- | engine/classes/ElggMenuItem.php | 3 | ||||
-rw-r--r-- | engine/lib/users.php | 32 | ||||
-rw-r--r-- | engine/lib/usersettings.php | 31 |
3 files changed, 39 insertions, 27 deletions
diff --git a/engine/classes/ElggMenuItem.php b/engine/classes/ElggMenuItem.php index af7bbc9c2..f2eb1534f 100644 --- a/engine/classes/ElggMenuItem.php +++ b/engine/classes/ElggMenuItem.php @@ -87,6 +87,9 @@ class ElggMenuItem { } $item = new ElggMenuItem($options['name'], $options['title'], $options['url']); + unset($options['name']); + unset($options['title']); + unset($options['url']); // special catch in case someone uses context rather than contexts if (isset($options['context'])) { diff --git a/engine/lib/users.php b/engine/lib/users.php index d22e42ebf..d69461c2b 100644 --- a/engine/lib/users.php +++ b/engine/lib/users.php @@ -1336,6 +1336,7 @@ function friends_page_handler($page_elements) { * @return void */ function friends_of_page_handler($page_elements) { + elgg_set_context('friends'); if (isset($page_elements[0]) && $user = get_user_by_username($page_elements[0])) { set_page_owner($user->getGUID()); } @@ -1490,22 +1491,23 @@ function elgg_members_page_handler($page) { * @return void */ function users_pagesetup() { - // Load config - global $CONFIG; - - //add submenu options - if (elgg_get_context() == "friends" || elgg_get_context() == "friendsof") { - // || elgg_get_context() == "collections") { - disabled as we no longer use collections - - add_submenu_item(elgg_echo('friends'), $CONFIG->wwwroot . "pg/friends/" - . elgg_get_page_owner()->username); - add_submenu_item(elgg_echo('friends:of'), $CONFIG->wwwroot . "pg/friendsof/" - . elgg_get_page_owner()->username); - - if (is_plugin_enabled('members')) { - add_submenu_item(elgg_echo('members:browse'), $CONFIG->wwwroot . "mod/members/index.php"); - } + if (elgg_get_page_owner_guid()) { + $params = array( + 'name' => 'friends', + 'title' => elgg_echo('friends'), + 'url' => 'pg/friends/' . elgg_get_page_owner()->username, + 'contexts' => array('friends') + ); + elgg_register_menu_item('page', $params); + + $params = array( + 'name' => 'friendsof', + 'title' => elgg_echo('friends:of'), + 'url' => 'pg/friendsof/' . elgg_get_page_owner()->username, + 'contexts' => array('friends') + ); + elgg_register_menu_item('page', $params); } } diff --git a/engine/lib/usersettings.php b/engine/lib/usersettings.php index 7192ea0fa..f6bbaea06 100644 --- a/engine/lib/usersettings.php +++ b/engine/lib/usersettings.php @@ -42,20 +42,27 @@ $priority = 500) { * @return void */ function usersettings_pagesetup() { - // Get config - global $CONFIG; - - // Menu options - if (elgg_get_context() == "settings") { + if (elgg_get_context() == "settings" && get_loggedin_userid()) { $user = get_loggedin_user(); - add_submenu_item(elgg_echo('usersettings:user:opt:linktext'), - $CONFIG->wwwroot . "pg/settings/user/{$user->username}/"); - - add_submenu_item(elgg_echo('usersettings:plugins:opt:linktext'), - $CONFIG->wwwroot . "pg/settings/plugins/{$user->username}/"); - add_submenu_item(elgg_echo('usersettings:statistics:opt:linktext'), - $CONFIG->wwwroot . "pg/settings/statistics/{$user->username}/"); + $params = array( + 'name' => '1_account', + 'title' => elgg_echo('usersettings:user:opt:linktext'), + 'url' => "pg/settings/user/{$user->username}", + ); + elgg_register_menu_item('page', $params); + $params = array( + 'name' => '1_plugins', + 'title' => elgg_echo('usersettings:plugins:opt:linktext'), + 'url' => "pg/settings/plugins/{$user->username}", + ); + elgg_register_menu_item('page', $params); + $params = array( + 'name' => '1_statistics', + 'title' => elgg_echo('usersettings:statistics:opt:linktext'), + 'url' => "pg/settings/statistics/{$user->username}", + ); + elgg_register_menu_item('page', $params); } } |