Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
08/11/2011 08:52:01 PM (15 years ago)
Author:
djpaul
Message:

Revert bp_core_add_admin_menu_page() back to BP 1.2.9 version to fix third-party plugins' menu problems. Fixes #3454, props johnjamesjacoby

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-core/deprecated/1.5.php

    r4961 r4966  
    6262 */
    6363function bp_core_add_admin_menu_page( $args = '' ) {
     64    global $_registered_pages, $admin_page_hooks, $menu;
     65
     66    _deprecated_function( __FUNCTION__, '1.5', 'Use add_menu_page()' );
     67
    6468    $defaults = array(
     69        'access_level' => 2,
     70        'file'         => false,
     71        'function'     => false,
     72        'icon_url'     => false,
     73        'menu_title'   => '',
    6574        'page_title'   => '',
    66         'menu_title'   => '',
    67         'capability'   => 'manage_options',
    68         'file'         => '',
    69         'function'     => '',
    70         'icon_url'     => '',
    7175        'position'     => 100
    7276    );
     
    7579    extract( $r, EXTR_SKIP );
    7680
    77     _deprecated_function( __FUNCTION__, '1.5', 'Use add_menu_page()' );
    78     return add_menu_page( $page_title, $menu_title, $capability, $file, $function, $icon_url, $position );
    79 }
    80 
     81    $file     = plugin_basename( $file );
     82    $hookname = get_plugin_page_hookname( $file, '' );
     83   
     84    $admin_page_hooks[$file] = sanitize_title( $menu_title );
     85
     86    if ( !empty( $function ) && !empty ( $hookname ) )
     87        add_action( $hookname, $function );
     88
     89    if ( empty( $icon_url ) )
     90        $icon_url = 'images/generic.png';
     91    elseif ( is_ssl() && 0 === strpos( $icon_url, 'http://' ) )
     92        $icon_url = 'https://' . substr( $icon_url, 7 );
     93
     94    do {
     95        $position++;
     96    } while ( !empty( $menu[$position] ) );
     97
     98    $menu[$position] = array ( $menu_title, $access_level, $file, $page_title, 'menu-top ' . $hookname, $hookname, $icon_url );
     99    $_registered_pages[$hookname] = true;
     100
     101    return $hookname;
     102}
    81103/** Activity ******************************************************************/
    82104
Note: See TracChangeset for help on using the changeset viewer.