Skip to:
Content

BuddyPress.org

Ticket #5440: 5440.03.patch

File 5440.03.patch, 11.0 KB (added by dcavins, 7 years ago)
  • bp-groups/bp-groups-template.php

    diff --git bp-groups/bp-groups-template.php bp-groups/bp-groups-template.php
    index 9228b94..aee5fbc 100644
    class BP_Groups_Membership_Requests_Template { 
    30533053        }
    30543054
    30553055        function the_request() {
     3056
    30563057                $this->in_the_loop = true;
    30573058                $this->request     = $this->next_request();
    30583059
    class BP_Groups_Membership_Requests_Template { 
    30733074 * @return bool True if there are requests, otherwise false.
    30743075 */
    30753076function bp_group_has_membership_requests( $args = '' ) {
    3076         global $requests_template, $groups_template;
     3077        global $requests_template;
    30773078
    30783079        $defaults = array(
    3079                 'group_id' => $groups_template->group->id,
     3080                'group_id' => buddypress()->groups->current_group->id,
    30803081                'per_page' => 10,
    30813082                'page'     => 1,
    30823083                'max'      => false
    function bp_group_request_reject_link() { 
    31103111        echo bp_get_group_request_reject_link();
    31113112}
    31123113        function bp_get_group_request_reject_link() {
    3113                 global $requests_template, $groups_template;
     3114                global $requests_template;
    31143115
    3115                 return apply_filters( 'bp_get_group_request_reject_link', wp_nonce_url( bp_get_group_permalink( $groups_template->group ) . 'admin/membership-requests/reject/' . $requests_template->request->id, 'groups_reject_membership_request' ) );
     3116                return apply_filters( 'bp_get_group_request_reject_link', wp_nonce_url( bp_get_group_permalink( buddypress()->groups->current_group ) . 'admin/membership-requests/reject/' . $requests_template->request->membership_id, 'groups_reject_membership_request' ) );
    31163117        }
    31173118
    31183119function bp_group_request_accept_link() {
    31193120        echo bp_get_group_request_accept_link();
    31203121}
    31213122        function bp_get_group_request_accept_link() {
    3122                 global $requests_template, $groups_template;
     3123                global $requests_template;
    31233124
    3124                 return apply_filters( 'bp_get_group_request_accept_link', wp_nonce_url( bp_get_group_permalink( $groups_template->group ) . 'admin/membership-requests/accept/' . $requests_template->request->id, 'groups_accept_membership_request' ) );
     3125                return apply_filters( 'bp_get_group_request_accept_link', wp_nonce_url( bp_get_group_permalink( buddypress()->groups->current_group ) . 'admin/membership-requests/accept/' . $requests_template->request->membership_id, 'groups_accept_membership_request' ) );
    31253126        }
    31263127
    31273128function bp_group_request_user_link() {
    function bp_group_request_comment() { 
    31453146        echo apply_filters( 'bp_group_request_comment', strip_tags( stripslashes( $requests_template->request->comments ) ) );
    31463147}
    31473148
     3149/**
     3150 * Output pagination links for group membership requests.
     3151 *
     3152 * @since BuddyPress (2.0.0)
     3153 */
     3154function bp_group_mem_requests_pagination_links() {
     3155        echo bp_get_group_mem_requests_pagination_links();
     3156}
     3157        /**
     3158         * Get pagination links for group membership requests.
     3159         *
     3160         * @since BuddyPress (2.0.0)
     3161         */
     3162        function bp_get_group_mem_requests_pagination_links() {
     3163                global $requests_template;
     3164                return apply_filters( 'bp_get_group_mem_requests_pagination_links', $requests_template->pag_links );
     3165        }
     3166
     3167/**
     3168 * Output pagination count text for group membership requests.
     3169 *
     3170 * @since BuddyPress (2.0.0)
     3171 */
     3172function bp_group_mem_requests_pagination_count() {
     3173        echo bp_get_group_mem_requests_pagination_count();
     3174}
     3175        /**
     3176         * Get pagination count text for group membership requests.
     3177         *
     3178         * @since BuddyPress (2.0.0)
     3179         */
     3180        function bp_get_group_mem_requests_pagination_count() {
     3181                global $requests_template;
     3182
     3183                $start_num = intval( ( $requests_template->pag_page - 1 ) * $requests_template->pag_num ) + 1;
     3184                $from_num  = bp_core_number_format( $start_num );
     3185                $to_num    = bp_core_number_format( ( $start_num + ( $requests_template->pag_num - 1 ) > $requests_template->total_request_count ) ? $requests_template->total_request_count : $start_num + ( $requests_template->pag_num - 1 ) );
     3186                $total     = bp_core_number_format( $requests_template->total_request_count );
     3187
     3188                return apply_filters( 'bp_get_groups_pagination_count', sprintf( _n( 'Viewing requests %1$s to %2$s (of %3$s request)', 'Viewing request %1$s to %2$s (of %3$s requests)', $total, 'buddypress' ), $from_num, $to_num, $total ), $from_num, $to_num, $total );
     3189        }
     3190
    31483191/************************************************************************************
    31493192 * Invite Friends Template Tags
    31503193 **/
  • bp-templates/bp-legacy/buddypress-functions.php

    diff --git bp-templates/bp-legacy/buddypress-functions.php bp-templates/bp-legacy/buddypress-functions.php
    index bbe6211..0ce0482 100644
    class BP_Legacy extends BP_Theme_Compat { 
    134134                $actions = array(
    135135
    136136                        // Directory filters
    137                         'blogs_filter'    => 'bp_legacy_theme_object_template_loader',
    138                         'forums_filter'   => 'bp_legacy_theme_object_template_loader',
    139                         'groups_filter'   => 'bp_legacy_theme_object_template_loader',
    140                         'members_filter'  => 'bp_legacy_theme_object_template_loader',
    141                         'messages_filter' => 'bp_legacy_theme_messages_template_loader',
    142                         'invite_filter'   => 'bp_legacy_theme_invite_template_loader',
     137                        'blogs_filter'                                  => 'bp_legacy_theme_object_template_loader',
     138                        'forums_filter'                                 => 'bp_legacy_theme_object_template_loader',
     139                        'groups_filter'                                 => 'bp_legacy_theme_object_template_loader',
     140                        'members_filter'                                => 'bp_legacy_theme_object_template_loader',
     141                        'messages_filter'                               => 'bp_legacy_theme_messages_template_loader',
     142                        'invite_filter'                                 => 'bp_legacy_theme_invite_template_loader',
     143                        'membership_requests_filter'    => 'bp_legacy_theme_membership_requests_template_loader',
    143144
    144145                        // Friends
    145146                        'accept_friendship' => 'bp_legacy_theme_ajax_accept_friendship',
    function bp_legacy_theme_invite_template_loader() { 
    612613}
    613614
    614615/**
     616 * Load group membership requests loop to handle pagination requests sent via AJAX.
     617 *
     618 * @since BuddyPress (2.0.0)
     619 */
     620function bp_legacy_theme_membership_requests_template_loader() {
     621        bp_get_template_part( 'groups/single/admin-mem-requests-loop' );
     622        exit();
     623}
     624
     625/**
    615626 * Load the activity loop template when activity is requested via AJAX,
    616627 *
    617628 * @return string JSON object containing 'contents' (output of the template loop
  • new file p-templates/bp-legacy/buddypress/groups/single/admin-mem-requests-loop.php

    diff --git bp-templates/bp-legacy/buddypress/groups/single/admin-mem-requests-loop.php bp-templates/bp-legacy/buddypress/groups/single/admin-mem-requests-loop.php
    new file mode 100644
    index 0000000..81fe660
    - +  
     1<?php if ( bp_group_has_membership_requests( bp_ajax_querystring( 'membership_requests' ) ) ) : ?>
     2
     3        <div id="pag-top" class="pagination">
     4
     5                <div class="pag-count" id="group-mem-requests-count-top">
     6
     7                        <?php bp_group_mem_requests_pagination_count(); ?>
     8
     9                </div>
     10
     11                <div class="pagination-links" id="group-mem-requests-pag-top">
     12
     13                        <?php bp_group_mem_requests_pagination_links(); ?>
     14
     15                </div>
     16
     17        </div>
     18
     19        <ul id="request-list" class="item-list">
     20                <?php while ( bp_group_membership_requests() ) : bp_group_the_membership_request(); ?>
     21
     22                        <li>
     23                                <?php bp_group_request_user_avatar_thumb(); ?>
     24                                <h4><?php bp_group_request_user_link(); ?> <span class="comments"><?php bp_group_request_comment(); ?></span></h4>
     25                                <span class="activity"><?php bp_group_request_time_since_requested(); ?></span>
     26
     27                                <?php do_action( 'bp_group_membership_requests_admin_item' ); ?>
     28
     29                                <div class="action">
     30
     31                                        <?php bp_button( array( 'id' => 'group_membership_accept', 'component' => 'groups', 'wrapper_class' => 'accept', 'link_href' => bp_get_group_request_accept_link(), 'link_title' => __( 'Accept', 'buddypress' ), 'link_text' => __( 'Accept', 'buddypress' ) ) ); ?>
     32
     33                                        <?php bp_button( array( 'id' => 'group_membership_reject', 'component' => 'groups', 'wrapper_class' => 'reject', 'link_href' => bp_get_group_request_reject_link(), 'link_title' => __( 'Reject', 'buddypress' ), 'link_text' => __( 'Reject', 'buddypress' ) ) ); ?>
     34
     35                                        <?php do_action( 'bp_group_membership_requests_admin_item_action' ); ?>
     36
     37                                </div>
     38                        </li>
     39
     40                <?php endwhile; ?>
     41        </ul>
     42
     43        <div id="pag-bottom" class="pagination">
     44
     45                <div class="pag-count" id="group-mem-requests-count-bottom">
     46
     47                        <?php bp_group_mem_requests_pagination_count(); ?>
     48
     49                </div>
     50
     51                <div class="pagination-links" id="group-mem-requests-pag-bottom">
     52
     53                        <?php bp_group_mem_requests_pagination_links(); ?>
     54
     55                </div>
     56
     57        </div>
     58
     59        <?php else: ?>
     60
     61                <div id="message" class="info">
     62                        <p><?php _e( 'There are no pending membership requests.', 'buddypress' ); ?></p>
     63                </div>
     64
     65        <?php endif; ?>
     66 No newline at end of file
  • bp-templates/bp-legacy/buddypress/groups/single/admin.php

    diff --git bp-templates/bp-legacy/buddypress/groups/single/admin.php bp-templates/bp-legacy/buddypress/groups/single/admin.php
    index 6a7d3c8..0fc8b47 100644
     
    303303
    304304        <?php do_action( 'bp_before_group_membership_requests_admin' ); ?>
    305305
    306         <?php if ( bp_group_has_membership_requests() ) : ?>
     306                <div class="membership_requests">
    307307
    308                 <ul id="request-list" class="item-list">
    309                         <?php while ( bp_group_membership_requests() ) : bp_group_the_membership_request(); ?>
     308                        <?php bp_get_template_part( 'groups/single/admin-mem-requests-loop' ); ?>
    310309
    311                                 <li>
    312                                         <?php bp_group_request_user_avatar_thumb(); ?>
    313                                         <h4><?php bp_group_request_user_link(); ?> <span class="comments"><?php bp_group_request_comment(); ?></span></h4>
    314                                         <span class="activity"><?php bp_group_request_time_since_requested(); ?></span>
    315 
    316                                         <?php do_action( 'bp_group_membership_requests_admin_item' ); ?>
    317 
    318                                         <div class="action">
    319 
    320                                                 <?php bp_button( array( 'id' => 'group_membership_accept', 'component' => 'groups', 'wrapper_class' => 'accept', 'link_href' => bp_get_group_request_accept_link(), 'link_title' => __( 'Accept', 'buddypress' ), 'link_text' => __( 'Accept', 'buddypress' ) ) ); ?>
    321 
    322                                                 <?php bp_button( array( 'id' => 'group_membership_reject', 'component' => 'groups', 'wrapper_class' => 'reject', 'link_href' => bp_get_group_request_reject_link(), 'link_title' => __( 'Reject', 'buddypress' ), 'link_text' => __( 'Reject', 'buddypress' ) ) ); ?>
    323 
    324                                                 <?php do_action( 'bp_group_membership_requests_admin_item_action' ); ?>
    325 
    326                                         </div>
    327                                 </li>
    328 
    329                         <?php endwhile; ?>
    330                 </ul>
    331 
    332         <?php else: ?>
    333 
    334                 <div id="message" class="info">
    335                         <p><?php _e( 'There are no pending membership requests.', 'buddypress' ); ?></p>
    336310                </div>
    337311
    338         <?php endif; ?>
    339 
    340312        <?php do_action( 'bp_after_group_membership_requests_admin' ); ?>
    341313
    342314<?php endif; ?>
  • bp-templates/bp-legacy/js/buddypress.js

    diff --git bp-templates/bp-legacy/js/buddypress.js bp-templates/bp-legacy/js/buddypress.js
    index 15bb349..1946e5e 100644
    jq(document).ready( function() { 
    853853                                template = 'groups/single/members';
    854854                        }
    855855
     856                        // On the Admin > Requests page, we need to reset the object, since "admin" isn't helpful
     857                        if ( 'admin' == object && jq('body').hasClass('membership-requests') ) {
     858                                object = 'membership_requests';
     859                        }
     860
    856861                        if ( pagination_id.indexOf( 'pag-bottom' ) !== -1 ) {
    857862                                var caller = 'pag-bottom';
    858863                        } else {