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);  	}  }  | 
