admin_sections; $current_section = $vars['page'][0]; $child_section = (isset($vars['page'][1])) ? $vars['page'][1] : NULL; // "Plugin Settings" is a special sidemenu item that is added automatically // it's calculated here instead of in admin_init() because of preformance concerns. $installed_plugins = get_installed_plugins(); $plugin_settings_children = $sort = array(); foreach ($installed_plugins as $plugin_id => $info) { if (!$info['active']) { continue; } // @todo might not need to check if plugin is enabled here because // this view wouldn't exist if it's not. right? if (is_plugin_enabled($plugin_id) && elgg_view_exists("settings/{$plugin_id}/edit")) { $plugin_settings_children[$plugin_id] = array( 'title' => $info['manifest']['name'] ); $sort[] = elgg_strtolower($info['manifest']['name']); } } array_multisort($sort, SORT_ASC, SORT_STRING, $plugin_settings_children); if ($plugin_settings_children) { // merge in legacy support with new support. if (!isset($sections['plugin_settings'])) { $sections['plugin_settings'] = array( 'title' => elgg_echo('admin:plugin_settings'), 'children' => $plugin_settings_children ); } else { $sections['plugin_settings']['title'] = elgg_echo('admin:plugin_settings'); if (isset($sections['plugin_settings']['children'])) { $children = array_merge($plugin_settings_children, $sections['plugin_settings']['children']); $sections['plugin_settings']['children'] = $children; } } } ?>