diff options
Diffstat (limited to 'mod/file')
| -rw-r--r-- | mod/file/start.php | 36 | 
1 files changed, 13 insertions, 23 deletions
| diff --git a/mod/file/start.php b/mod/file/start.php index 31362308c..bb291680e 100644 --- a/mod/file/start.php +++ b/mod/file/start.php @@ -60,7 +60,7 @@  		// Register entity type  		register_entity_type('object','file'); -		elgg_register_plugin_hook_handler('register', 'menu:user_ownerblock', 'file_user_ownerblock_menu'); +		elgg_register_plugin_hook_handler('register', 'menu:owner_block', 'file_owner_block_menu');  		// embed support  		elgg_register_plugin_hook_handler('embed_get_sections', 'all', 'file_embed_get_sections'); @@ -70,24 +70,6 @@  	}  	/** -	 * Sets up submenus for the file system.  Triggered on pagesetup. -	 * -	 */ -	function file_submenus() { - -		global $CONFIG; - -		$page_owner = elgg_get_page_owner(); - -		// Group submenu option -			if ($page_owner instanceof ElggGroup && elgg_get_context() == "groups") { -				if($page_owner->file_enable != "no"){ -					add_submenu_item(elgg_echo("file:group",array($page_owner->name)), $CONFIG->wwwroot . "pg/file/" . $page_owner->username); -				} -			} -	} - -	/**  	 * File page handler  	 *  	 * @param array $page Array of page elements, forwarded by the page handling mechanism @@ -161,9 +143,18 @@  /**   * Add a menu item to the user ownerblock   */ -function file_user_ownerblock_menu($hook, $type, $return, $params) { -	$item = new ElggMenuItem('file', elgg_echo('file'), "pg/file/owner/{$params['user']->username}"); -	elgg_register_menu_item('user_ownerblock', $item); +function file_owner_block_menu($hook, $type, $return, $params) { +	if (elgg_instanceof($params['entity'], 'user')) { +		$url = "pg/file/owner/{$params['entity']->username}"; +		$item = new ElggMenuItem('file', elgg_echo('file'), $url); +		elgg_register_menu_item('owner_block', $item); +	} else { +		if ($params['entity']->file_enable != "no") { +			$url = "pg/file/owner/{$params['entity']->username}"; +			$item = new ElggMenuItem('file', elgg_echo('file:group'), $url); +			elgg_register_menu_item('owner_block', $item); +		} +	}  }  	/** @@ -317,7 +308,6 @@ function file_user_ownerblock_menu($hook, $type, $return, $params) {  	// Make sure test_init is called on initialisation  	elgg_register_event_handler('init','system','file_init'); -	elgg_register_event_handler('pagesetup','system','file_submenus');  	// Register actions  	elgg_register_action("file/upload", $CONFIG->pluginspath . "file/actions/upload.php"); | 
