addChild() public method

This is reserved for the \ElggMenuBuilder.
public addChild ( ElggMenuItem $item ) : void
$item ElggMenuItem A child menu item
return void
Beispiel #1
0
function gvtheme_init()
{
    // custom topbar
    elgg_unregister_menu_item('topbar', 'elgg_logo');
    elgg_register_plugin_hook_handler('register', 'menu:topbar', 'gvtheme_custom_topbarmenu_setup');
    elgg_register_plugin_hook_handler('register', 'menu:entity', 'gvtheme_custom_entitymenu_setup');
    elgg_register_plugin_hook_handler('register', 'menu:river', 'gvtheme_custom_rivermenu_setup');
    elgg_register_event_handler('pagesetup', 'system', 'gvtheme_custom_usersettings_pagesetup');
    elgg_extend_view('css/elgg', 'gvtheme/css');
    elgg_extend_view('page/elements/head', 'gvtheme/head');
    // remove entities statistics views from user account
    elgg_unextend_view('core/settings/statistics', 'core/settings/statistics/numentities');
    // override some actions
    $action_base = elgg_get_plugins_path() . 'gvtheme/actions';
    elgg_register_action("avatar/upload", "{$action_base}/avatar/upload.php");
    elgg_register_action("avatar/crop", "{$action_base}/avatar/crop.php");
    elgg_register_action("friends/add", "{$action_base}/friends/add.php");
    // get number of users
    $num_members = get_number_users();
    elgg_register_menu_item('topbar', array('name' => 'member_number', 'href' => "members/newest", 'text' => elgg_echo("gvtheme:num_members", array($num_members)), 'priority' => 1000, 'section' => 'alt'));
    $initiatives_item = new ElggMenuItem('initiatives', elgg_echo('gvtheme:initiatives'));
    $cnc_item = new ElggMenuItem('cnc', elgg_echo('gvtheme:cnc'), 'file/group/9545/all');
    $cnc_item->setItemClass('gvgroup-child-menu');
    $initiatives_item->addChild($cnc_item);
    elgg_register_menu_item('site', $initiatives_item);
}
Beispiel #2
0
function au_theme_titlemenu($h, $t, $r, $p)
{
    $threshold = elgg_get_plugin_setting('compact_title_button_threshold', 'au_theme');
    if (!$threshold) {
        $threshold = 1;
    }
    if ($t == 'menu:title' && count($r) > $threshold) {
        $count = 0;
        foreach ($r as $key => $button) {
            if ($button->inContext()) {
                $count++;
            }
        }
        if ($count <= $threshold) {
            return $r;
        }
        // add in our top level element 'Actions'
        // everything else gets added as a child of that
        $text = elgg_echo('au_theme:titledropdown') . '<span class="elgg-icon elgg-icon-round-plus"></span>';
        $item = new ElggMenuItem('action-dropdown', $text, '#');
        $item->setLinkClass('action-dropdown');
        foreach ($r as $key => $button) {
            if ($button->inContext()) {
                $item->addChild($button);
            }
        }
        return array($item);
    }
}