Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
11/14/2010 04:52:49 AM (16 years ago)
Author:
johnjamesjacoby
Message:

More bp-core-adminbar clean-up. Backport thisblog function from trunk.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/1.2/bp-core/bp-core-adminbar.php

    r3411 r3414  
    100100        global $bp;
    101101
    102         if ( !is_user_logged_in() || !function_exists('bp_blogs_install') )
    103                 return false;
    104 
    105         if ( bp_core_is_multisite() ) {
    106 
    107                 if ( !$blogs = wp_cache_get( 'bp_blogs_of_user_' . $bp->loggedin_user->id . '_inc_hidden', 'bp' ) ) {
    108                         $blogs = bp_blogs_get_blogs_for_user( $bp->loggedin_user->id, true );
    109                         wp_cache_set( 'bp_blogs_of_user_' . $bp->loggedin_user->id . '_inc_hidden', $blogs, 'bp' );
    110                 }
    111 
    112                 echo '<li id="bp-adminbar-blogs-menu"><a href="' . $bp->loggedin_user->domain . $bp->blogs->slug . '/">';
    113 
    114                 _e( 'My Blogs', 'buddypress' );
     102        if ( !is_user_logged_in() || !bp_is_active( 'blogs' ) )
     103                return false;
     104
     105        if ( !is_multisite() )
     106                return false;
     107
     108        if ( !$blogs = wp_cache_get( 'bp_blogs_of_user_' . $bp->loggedin_user->id . '_inc_hidden', 'bp' ) ) {
     109                $blogs = bp_blogs_get_blogs_for_user( $bp->loggedin_user->id, true );
     110                wp_cache_set( 'bp_blogs_of_user_' . $bp->loggedin_user->id . '_inc_hidden', $blogs, 'bp' );
     111        }
     112
     113        echo '<li id="bp-adminbar-blogs-menu"><a href="' . $bp->loggedin_user->domain . $bp->blogs->slug . '/">';
     114
     115        _e( 'My Blogs', 'buddypress' );
     116
     117        echo '</a>';
     118        echo '<ul>';
     119
     120        if ( is_array( $blogs['blogs'] ) && (int)$blogs['count'] ) {
     121                $counter = 0;
     122                foreach ( (array)$blogs['blogs'] as $blog ) {
     123                        $alt = ( 0 == $counter % 2 ) ? ' class="alt"' : '';
     124                        $site_url = esc_attr( $blog->siteurl );
     125
     126                        echo '<li' . $alt . '>';
     127                        echo '<a href="' . $site_url . '">' . esc_html( $blog->name ) . '</a>';
     128                        echo '<ul>';
     129                        echo '<li class="alt"><a href="' . $site_url . 'wp-admin/">' . __( 'Dashboard', 'buddypress' ) . '</a></li>';
     130                        echo '<li><a href="' . $site_url . 'wp-admin/post-new.php">' . __( 'New Post', 'buddypress' ) . '</a></li>';
     131                        echo '<li class="alt"><a href="' . $site_url . 'wp-admin/edit.php">' . __( 'Manage Posts', 'buddypress' ) . '</a></li>';
     132                        echo '<li><a href="' . $site_url . 'wp-admin/edit-comments.php">' . __( 'Manage Comments', 'buddypress' ) . '</a></li>';
     133                        echo '</ul>';
     134                        echo '</li>';
     135                        $counter++;
     136                }
     137        }
     138
     139        $alt = ( 0 == $counter % 2 ) ? ' class="alt"' : '';
     140
     141        if ( bp_blog_signup_enabled() ) {
     142                echo '<li' . $alt . '>';
     143                echo '<a href="' . $bp->root_domain . '/' . $bp->blogs->slug . '/create/">' . __( 'Create a Blog!', 'buddypress' ) . '</a>';
     144                echo '</li>';
     145        }
     146
     147        echo '</ul>';
     148        echo '</li>';
     149}
     150
     151function bp_adminbar_thisblog_menu() {
     152        if ( current_user_can( 'edit_posts' ) ) {
     153                echo '<li id="bp-adminbar-thisblog-menu"><a href="' . admin_url() . '">';
     154
     155                _e( 'Dashboard', 'buddypress' );
    115156
    116157                echo '</a>';
    117158                echo '<ul>';
    118159
    119                 if ( is_array( $blogs['blogs'] ) && (int)$blogs['count'] ) {
    120                         $counter = 0;
    121                         foreach ( (array)$blogs['blogs'] as $blog ) {
    122                                 $alt = ( 0 == $counter % 2 ) ? ' class="alt"' : '';
    123                                 $site_url = esc_attr( $blog->siteurl );
    124 
    125                                 echo '<li' . $alt . '>';
    126                                 echo '<a href="' . $site_url . '">' . esc_html( $blog->name ) . '</a>';
    127                                 echo '<ul>';
    128                                 echo '<li class="alt"><a href="' . $site_url . 'wp-admin/">' . __( 'Dashboard', 'buddypress' ) . '</a></li>';
    129                                 echo '<li><a href="' . $site_url . 'wp-admin/post-new.php">' . __( 'New Post', 'buddypress' ) . '</a></li>';
    130                                 echo '<li class="alt"><a href="' . $site_url . 'wp-admin/edit.php">' . __( 'Manage Posts', 'buddypress' ) . '</a></li>';
    131                                 echo '<li><a href="' . $site_url . 'wp-admin/edit-comments.php">' . __( 'Manage Comments', 'buddypress' ) . '</a></li>';
    132                                 echo '</ul>';
    133                                 echo '</li>';
    134                                 $counter++;
    135                         }
    136                 }
    137 
    138                 $alt = ( 0 == $counter % 2 ) ? ' class="alt"' : '';
    139 
    140                 if ( bp_blog_signup_enabled() ) {
    141                         echo '<li' . $alt . '>';
    142                         echo '<a href="' . $bp->root_domain . '/' . $bp->blogs->slug . '/create/">' . __( 'Create a Blog!', 'buddypress' ) . '</a>';
    143                         echo '</li>';
    144                 }
    145 
    146                 echo '</ul>';
    147                 echo '</li>';
    148         } elseif ( current_user_can( 'administrator' ) ) {
    149                 $site_url = site_url();
    150 
    151                 echo '<li id="bp-adminbar-admin-menu"><a href="' . admin_url() . '/">';
    152 
    153                 _e( 'Site Admin', 'buddypress' );
    154 
    155                 echo '</a>';
    156                 echo '<ul>';
    157 
    158                 echo '<li class="alt"><a href="' . admin_url() . '">' . __( 'Dashboard', 'buddypress' ) . '</a></li>';
    159                 echo '<li><a href="' . admin_url( 'post-new.php' ) . '">' . __( 'New Post', 'buddypress' ) . '</a></li>';
    160                 echo '<li class="alt"><a href="' . admin_url( 'edit.php' ) . '">' . __( 'Manage Posts', 'buddypress' ) . '</a></li>';
    161                 echo '<li><a href="' . admin_url( 'edit-comments.php' ) . '">' . __( 'Manage Comments', 'buddypress' ) . '</a></li>';
     160                echo '<li class="alt"><a href="' . admin_url() . 'post-new.php">' . __( 'New Post', 'buddypress' ) . '</a></li>';
     161                echo '<li><a href="' . admin_url() . 'edit.php">' . __( 'Manage Posts', 'buddypress' ) . '</a></li>';
     162                echo '<li class="alt"><a href="' . admin_url() . 'edit-comments.php">' . __( 'Manage Comments', 'buddypress' ) . '</a></li>';
     163
     164                do_action( 'bp_adminbar_thisblog_items' );
     165
    162166                echo '</ul>';
    163167                echo '</li>';
     
    208212
    209213        // Only for multisite
    210         if ( !bp_core_is_multisite() )
     214        if ( !is_multisite() )
    211215                return false;
    212216
    213217        // Hide on root blog
    214         if ( $current_blog->blog_id == BP_ROOT_BLOG || !function_exists( 'bp_blogs_install' ) )
     218        if ( $current_blog->blog_id == BP_ROOT_BLOG || !bp_is_active( 'blogs' ) )
    215219                return false;
    216220
     
    250254                        <li><a href="<?php echo $bp->root_domain . '/' . BP_MEMBERS_SLUG . '/?random-member' ?>"><?php _e( 'Random Member', 'buddypress' ) ?></a></li>
    251255
    252                         <?php if ( function_exists('groups_install') ) : ?>
     256                        <?php if ( bp_is_active( 'groups' ) ) : ?>
    253257
    254258                                <li class="alt"><a href="<?php echo $bp->root_domain . '/' . $bp->groups->slug . '/?random-group' ?>"><?php _e( 'Random Group', 'buddypress' ) ?></a></li>
     
    256260                        <?php endif; ?>
    257261
    258                         <?php if ( function_exists('bp_blogs_install') && bp_core_is_multisite() ) : ?>
     262                        <?php if ( bp_is_active( 'blogs' ) && is_multisite() ) : ?>
    259263
    260264                                <li><a href="<?php echo $bp->root_domain . '/' . $bp->blogs->slug . '/?random-blog' ?>"><?php _e( 'Random Blog', 'buddypress' ) ?></a></li>
     
    275279add_action( 'bp_adminbar_menus', 'bp_adminbar_account_menu',       4   );
    276280add_action( 'bp_adminbar_menus', 'bp_adminbar_blogs_menu',         6   );
     281add_action( 'bp_adminbar_menus', 'bp_adminbar_thisblog_menu',      6   );
    277282add_action( 'bp_adminbar_menus', 'bp_adminbar_notifications_menu', 8   );
    278283add_action( 'bp_adminbar_menus', 'bp_adminbar_authors_menu',       12  );
Note: See TracChangeset for help on using the changeset viewer.