Skip to:
Content

BuddyPress.org

Changeset 11138


Ignore:
Timestamp:
09/21/2016 03:40:45 PM (10 years ago)
Author:
dcavins
Message:

Improve group manage members screen.

  • Change structure of list items to more closely match

members/members-loop.php.

  • Use bp_group_has_members() for each loop.
  • Added the action bp_group_manage_members_admin_item to the admin

and moderator list items. (Already was applied to the member list.)

  • Added “none found” messages for each loop to support the addition of

a search box in #6385.

  • Added bp_group_member_joined_since() meta to member list items.
  • Added pagination controls to each list when needed.

Props dcavins, hnla, mercime, r-a-y.

Fixes #7105.

Location:
trunk/src/bp-templates/bp-legacy
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bp-templates/bp-legacy/buddypress/groups/single/admin/manage-members.php

    r11126 r11138  
    2222<div aria-live="polite" aria-relevant="all" aria-atomic="true">
    2323
    24         <div class="bp-widget">
    25                 <h3><?php _e( 'Administrators', 'buddypress' ); ?></h3>
    26 
    27                 <?php if ( bp_has_members( '&include='. bp_group_admin_ids() ) ) : ?>
    28 
    29                 <ul id="admins-list" class="item-list single-line">
    30 
    31                         <?php while ( bp_members() ) : bp_the_member(); ?>
    32                         <li>
    33                                 <?php echo bp_core_fetch_avatar( array( 'item_id' => bp_get_member_user_id(), 'type' => 'thumb', 'width' => 30, 'height' => 30, 'alt' => sprintf( __( 'Profile picture of %s', 'buddypress' ), bp_get_member_name() ) ) ); ?>
    34                                 <h5>
    35                                         <a href="<?php bp_member_permalink(); ?>"> <?php bp_member_name(); ?></a>
    36                                         <?php if ( count( bp_group_admin_ids( false, 'array' ) ) > 1 ) : ?>
    37                                         <span class="small">
    38                                                 <a class="button confirm admin-demote-to-member" href="<?php bp_group_member_demote_link( bp_get_member_user_id() ); ?>"><?php _e( 'Demote to Member', 'buddypress' ); ?></a>
    39                                         </span>
    40                                         <?php endif; ?>
    41                                 </h5>
    42                         </li>
    43                         <?php endwhile; ?>
    44 
    45                 </ul>
     24        <div class="bp-widget group-members-list group-admins-list">
     25                <h3 class="section-header"><?php _e( 'Administrators', 'buddypress' ); ?></h3>
     26
     27                <?php if ( bp_group_has_members( array( 'per_page' => 15, 'group_role' => array( 'admin' ), 'page_arg' => 'mlpage-admin' ) ) ) : ?>
     28
     29                        <?php if ( bp_group_member_needs_pagination() ) : ?>
     30
     31                                <div class="pagination no-ajax">
     32
     33                                        <div id="member-count" class="pag-count">
     34                                                <?php bp_group_member_pagination_count(); ?>
     35                                        </div>
     36
     37                                        <div id="member-admin-pagination" class="pagination-links">
     38                                                <?php bp_group_member_admin_pagination(); ?>
     39                                        </div>
     40
     41                                </div>
     42
     43                        <?php endif; ?>
     44
     45                        <ul id="admins-list" class="item-list">
     46                                <?php while ( bp_group_members() ) : bp_group_the_member(); ?>
     47                                        <li>
     48                                                <div class="item-avatar">
     49                                                        <?php bp_group_member_avatar_thumb(); ?>
     50                                                </div>
     51
     52                                                <div class="item">
     53                                                        <div class="item-title">
     54                                                                <?php bp_group_member_link(); ?>
     55                                                        </div>
     56                                                        <p class="joined item-meta">
     57                                                                <?php bp_group_member_joined_since(); ?>
     58                                                        </p>
     59                                                        <?php
     60
     61                                                        /**
     62                                                         * Fires inside the item section of a member admin item in group management area.
     63                                                         *
     64                                                         * @since 1.1.0
     65                                                         * @since 2.7.0 Added $section parameter.
     66                                                         *
     67                                                         * @param $section Which list contains this item.
     68                                                         */
     69                                                        do_action( 'bp_group_manage_members_admin_item', 'admins-list' ); ?>
     70                                                </div>
     71
     72                                                <div class="action">
     73                                                        <?php if ( count( bp_group_admin_ids( false, 'array' ) ) > 1 ) : ?>
     74                                                                <a class="button confirm admin-demote-to-member" href="<?php bp_group_member_demote_link(); ?>"><?php _e( 'Demote to Member', 'buddypress' ); ?></a>
     75                                                        <?php endif; ?>
     76
     77                                                        <?php
     78
     79                                                        /**
     80                                                         * Fires inside the action section of a member admin item in group management area.
     81                                                         *
     82                                                         * @since 2.7.0
     83                                                         *
     84                                                         * @param $section Which list contains this item.
     85                                                         */
     86                                                        do_action( 'bp_group_manage_members_admin_actions', 'admins-list' ); ?>
     87                                                </div>
     88                                        </li>
     89                                <?php endwhile; ?>
     90                        </ul>
     91
     92                        <?php if ( bp_group_member_needs_pagination() ) : ?>
     93
     94                                <div class="pagination no-ajax">
     95
     96                                        <div id="member-count" class="pag-count">
     97                                                <?php bp_group_member_pagination_count(); ?>
     98                                        </div>
     99
     100                                        <div id="member-admin-pagination" class="pagination-links">
     101                                                <?php bp_group_member_admin_pagination(); ?>
     102                                        </div>
     103
     104                                </div>
     105
     106                        <?php endif; ?>
     107
     108                <?php else: ?>
     109
     110                <div id="message" class="info">
     111                        <p><?php _e( 'No group administrators were found.', 'buddypress' ); ?></p>
     112                </div>
    46113
    47114                <?php endif; ?>
    48 
    49115        </div>
    50116
    51         <?php if ( bp_group_has_moderators() ) : ?>
    52                 <div class="bp-widget">
    53                         <h3><?php _e( 'Moderators', 'buddypress' ); ?></h3>
    54 
    55                         <?php if ( bp_has_members( '&include=' . bp_group_mod_ids() ) ) : ?>
    56                                 <ul id="mods-list" class="item-list single-line">
    57 
    58                                         <?php while ( bp_members() ) : bp_the_member(); ?>
     117        <div class="bp-widget group-members-list group-mods-list">
     118                <h3 class="section-header"><?php _e( 'Moderators', 'buddypress' ); ?></h3>
     119
     120                <?php if ( bp_group_has_members( array( 'per_page' => 15, 'group_role' => array( 'mod' ), 'page_arg' => 'mlpage-mod' ) ) ) : ?>
     121
     122                        <?php if ( bp_group_member_needs_pagination() ) : ?>
     123
     124                                <div class="pagination no-ajax">
     125
     126                                        <div id="member-count" class="pag-count">
     127                                                <?php bp_group_member_pagination_count(); ?>
     128                                        </div>
     129
     130                                        <div id="member-admin-pagination" class="pagination-links">
     131                                                <?php bp_group_member_admin_pagination(); ?>
     132                                        </div>
     133
     134                                </div>
     135
     136                        <?php endif; ?>
     137
     138                        <ul id="mods-list" class="item-list">
     139
     140                                <?php while ( bp_group_members() ) : bp_group_the_member(); ?>
    59141                                        <li>
    60                                                 <?php echo bp_core_fetch_avatar( array( 'item_id' => bp_get_member_user_id(), 'type' => 'thumb', 'width' => 30, 'height' => 30, 'alt' => sprintf( __( 'Profile picture of %s', 'buddypress' ), bp_get_member_name() ) ) ); ?>
    61                                                 <h5>
    62                                                         <a href="<?php bp_member_permalink(); ?>"> <?php bp_member_name(); ?></a>
    63                                                         <span class="small">
    64                                                                 <a href="<?php bp_group_member_promote_admin_link( array( 'user_id' => bp_get_member_user_id() ) ); ?>" class="button confirm mod-promote-to-admin"><?php _e( 'Promote to Admin', 'buddypress' ); ?></a>
    65                                                                 <a class="button confirm mod-demote-to-member" href="<?php bp_group_member_demote_link( bp_get_member_user_id() ); ?>"><?php _e( 'Demote to Member', 'buddypress' ); ?></a>
    66                                                         </span>
    67                                                 </h5>
     142                                                <div class="item-avatar">
     143                                                        <?php bp_group_member_avatar_thumb(); ?>
     144                                                </div>
     145
     146                                                <div class="item">
     147                                                        <div class="item-title">
     148                                                                <?php bp_group_member_link(); ?>
     149                                                        </div>
     150                                                        <p class="joined item-meta">
     151                                                                <?php bp_group_member_joined_since(); ?>
     152                                                        </p>
     153                                                        <?php
     154
     155                                                        /**
     156                                                         * Fires inside the item section of a member admin item in group management area.
     157                                                         *
     158                                                         * @since 1.1.0
     159                                                         * @since 2.7.0 Added $section parameter.
     160                                                         *
     161                                                         * @param $section Which list contains this item.
     162                                                         */
     163                                                        do_action( 'bp_group_manage_members_admin_item', 'admins-list' ); ?>
     164                                                </div>
     165
     166                                                <div class="action">
     167                                                        <a href="<?php bp_group_member_promote_admin_link(); ?>" class="button confirm mod-promote-to-admin"><?php _e( 'Promote to Admin', 'buddypress' ); ?></a>
     168                                                        <a class="button confirm mod-demote-to-member" href="<?php bp_group_member_demote_link(); ?>"><?php _e( 'Demote to Member', 'buddypress' ); ?></a>
     169
     170                                                        <?php
     171
     172                                                        /**
     173                                                         * Fires inside the action section of a member admin item in group management area.
     174                                                         *
     175                                                         * @since 2.7.0
     176                                                         *
     177                                                         * @param $section Which list contains this item.
     178                                                         */
     179                                                        do_action( 'bp_group_manage_members_admin_actions', 'mods-list' ); ?>
     180
     181                                                </div>
    68182                                        </li>
    69                                         <?php endwhile; ?>
    70 
    71                                 </ul>
    72 
    73                         <?php endif; ?>
    74                 </div>
    75         <?php endif; ?>
    76 
    77 
    78         <div class="bp-widget">
    79                 <h3><?php _e( "Members", 'buddypress' ); ?></h3>
    80 
    81                 <?php if ( bp_group_has_members( 'per_page=15&exclude_banned=0' ) ) : ?>
    82 
    83                         <?php if ( bp_group_member_needs_pagination() ) : ?>
    84 
    85                                 <div class="pagination no-ajax">
    86 
    87                                         <div id="member-count" class="pag-count">
    88                                                 <?php bp_group_member_pagination_count(); ?>
    89                                         </div>
    90 
    91                                         <div id="member-admin-pagination" class="pagination-links">
    92                                                 <?php bp_group_member_admin_pagination(); ?>
    93                                         </div>
    94 
    95                                 </div>
    96 
    97                         <?php endif; ?>
    98 
    99                         <ul id="members-list" class="item-list single-line">
     183                                <?php endwhile; ?>
     184
     185                        </ul>
     186
     187                        <?php if ( bp_group_member_needs_pagination() ) : ?>
     188
     189                                <div class="pagination no-ajax">
     190
     191                                        <div id="member-count" class="pag-count">
     192                                                <?php bp_group_member_pagination_count(); ?>
     193                                        </div>
     194
     195                                        <div id="member-admin-pagination" class="pagination-links">
     196                                                <?php bp_group_member_admin_pagination(); ?>
     197                                        </div>
     198
     199                                </div>
     200
     201                        <?php endif; ?>
     202
     203                <?php else: ?>
     204
     205                        <div id="message" class="info">
     206                                <p><?php _e( 'No group moderators were found.', 'buddypress' ); ?></p>
     207                        </div>
     208
     209                <?php endif; ?>
     210        </div>
     211
     212        <div class="bp-widget group-members-list">
     213                <h3 class="section-header"><?php _e( "Members", 'buddypress' ); ?></h3>
     214
     215                <?php if ( bp_group_has_members( array( 'per_page' => 15, 'exclude_banned' => 0 ) ) ) : ?>
     216
     217                        <?php if ( bp_group_member_needs_pagination() ) : ?>
     218
     219                                <div class="pagination no-ajax">
     220
     221                                        <div id="member-count" class="pag-count">
     222                                                <?php bp_group_member_pagination_count(); ?>
     223                                        </div>
     224
     225                                        <div id="member-admin-pagination" class="pagination-links">
     226                                                <?php bp_group_member_admin_pagination(); ?>
     227                                        </div>
     228
     229                                </div>
     230
     231                        <?php endif; ?>
     232
     233                        <ul id="members-list" class="item-list">
    100234                                <?php while ( bp_group_members() ) : bp_group_the_member(); ?>
    101235
    102236                                        <li class="<?php bp_group_member_css_class(); ?>">
    103                                                 <?php bp_group_member_avatar_mini(); ?>
    104 
    105                                                 <h5>
    106                                                         <?php bp_group_member_link(); ?>
    107 
    108                                                         <?php if ( bp_get_group_member_is_banned() ) _e( '(banned)', 'buddypress' ); ?>
    109 
    110                                                         <span class="small">
    111 
     237                                                <div class="item-avatar">
     238                                                        <?php bp_group_member_avatar_thumb(); ?>
     239                                                </div>
     240
     241                                                <div class="item">
     242                                                        <div class="item-title">
     243                                                                <?php bp_group_member_link(); ?>
     244                                                                <?php
     245                                                                if ( bp_get_group_member_is_banned() ) {
     246                                                                        echo ' <span class="banned">';
     247                                                                        _e( '(banned)', 'buddypress' );
     248                                                                        echo '</span>';
     249                                                                } ?>
     250                                                        </div>
     251                                                        <p class="joined item-meta">
     252                                                                <?php bp_group_member_joined_since(); ?>
     253                                                        </p>
     254                                                        <?php
     255
     256                                                        /**
     257                                                         * Fires inside the item section of a member admin item in group management area.
     258                                                         *
     259                                                         * @since 1.1.0
     260                                                         * @since 2.7.0 Added $section parameter.
     261                                                         *
     262                                                         * @param $section Which list contains this item.
     263                                                         */
     264                                                        do_action( 'bp_group_manage_members_admin_item', 'admins-list' ); ?>
     265                                                </div>
     266
     267                                                <div class="action">
    112268                                                        <?php if ( bp_get_group_member_is_banned() ) : ?>
    113269
     
    122278                                                        <?php endif; ?>
    123279
    124                                                                 <a href="<?php bp_group_member_remove_link(); ?>" class="button confirm"><?php _e( 'Remove from group', 'buddypress' ); ?></a>
    125 
    126                                                                 <?php
    127 
    128                                                                 /**
    129                                                                  * Fires inside the display of a member admin item in group management area.
    130                                                                 *
    131                                                                  * @since 1.1.0
    132                                                                  */
    133                                                                 do_action( 'bp_group_manage_members_admin_item' ); ?>
    134 
    135                                                         </span>
    136                                                 </h5>
     280                                                        <a href="<?php bp_group_member_remove_link(); ?>" class="button confirm"><?php _e( 'Remove from group', 'buddypress' ); ?></a>
     281
     282                                                        <?php
     283
     284                                                        /**
     285                                                         * Fires inside the action section of a member admin item in group management area.
     286                                                        *
     287                                                         * @since 2.7.0
     288                                                         *
     289                                                         * @param $section Which list contains this item.
     290                                                         */
     291                                                        do_action( 'bp_group_manage_members_admin_actions', 'members-list' ); ?>
     292                                                </div>
    137293                                        </li>
    138294
     
    159315
    160316                        <div id="message" class="info">
    161                                 <p><?php _e( 'This group has no members.', 'buddypress' ); ?></p>
     317                                <p><?php _e( 'No group members were found.', 'buddypress' ); ?></p>
    162318                        </div>
    163319
    164320                <?php endif; ?>
    165 
    166321        </div>
    167322
  • trunk/src/bp-templates/bp-legacy/css/buddypress.css

    r11130 r11138  
    14211421        list-style: none;
    14221422}
     1423#buddypress .group-members-list {
     1424        width: 100%;
     1425        margin-top: 1em;
     1426        clear: both;
     1427        overflow: auto;
     1428}
    14231429#buddypress #item-buttons:empty {
    14241430        display: none;
Note: See TracChangeset for help on using the changeset viewer.