Skip to:
Content

BuddyPress.org

Changeset 2951


Ignore:
Timestamp:
04/24/2010 05:14:47 PM (15 years ago)
Author:
apeatling
Message:

User join filters.

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-activity/bp-activity-classes.php

    r2946 r2951  
    131131        if ( $per_page && $page ) {
    132132            $pag_sql = $wpdb->prepare( "LIMIT %d, %d", intval( ( $page - 1 ) * $per_page ), intval( $per_page ) );
    133             $activities = $wpdb->get_results( $wpdb->prepare( "{$select_sql} {$from_sql} {$where_sql} ORDER BY a.date_recorded {$sort} {$pag_sql}" ) );
     133            $activities = $wpdb->get_results( apply_filters( 'bp_activity_get_user_join_filter', $wpdb->prepare( "{$select_sql} {$from_sql} {$where_sql} ORDER BY a.date_recorded {$sort} {$pag_sql}", $select_sql, $from_sql, $where_sql, $sort, $pag_sql ) ) );
    134134        } else
    135             $activities = $wpdb->get_results( $wpdb->prepare( "{$select_sql} {$from_sql} {$where_sql} ORDER BY a.date_recorded {$sort} {$pag_sql}" ) );
     135            $activities = $wpdb->get_results( apply_filters( 'bp_activity_get_user_join_filter', $wpdb->prepare( "{$select_sql} {$from_sql} {$where_sql} ORDER BY a.date_recorded {$sort}", $select_sql, $from_sql, $where_sql, $sort ) ) );
    136136
    137137        $total_activities = $wpdb->get_var( $wpdb->prepare( "SELECT count(a.id) FROM {$bp->activity->table_name} a {$where_sql} ORDER BY a.date_recorded {$sort}" ) );
     
    367367
    368368            /* Retrieve all descendants of the $root node */
    369             $descendants = $wpdb->get_results( $wpdb->prepare( "SELECT a.*, u.user_email, u.user_nicename, u.user_login, u.display_name{$fullname_select} FROM {$bp->activity->table_name} a, {$wpdb->users} u{$fullname_from} WHERE u.ID = a.user_id {$fullname_where} AND a.type = 'activity_comment' AND a.item_id = %d AND a.mptt_left BETWEEN %d AND %d ORDER BY a.date_recorded ASC", $activity_id, $left, $right ) );
     369            $descendants = $wpdb->get_results( apply_filters( 'bp_activity_comments_user_join_filter', $wpdb->prepare( "SELECT a.*, u.user_email, u.user_nicename, u.user_login, u.display_name{$fullname_select} FROM {$bp->activity->table_name} a, {$wpdb->users} u{$fullname_from} WHERE u.ID = a.user_id {$fullname_where} AND a.type = 'activity_comment' AND a.item_id = %d AND a.mptt_left BETWEEN %d AND %d ORDER BY a.date_recorded ASC", $activity_id, $left, $right ), $activity_id, $left, $right ) );
    370370
    371371            /* Loop descendants and build an assoc array */
  • trunk/bp-core/bp-core-classes.php

    r2925 r2951  
    125125        $sql['from'] = "FROM " . CUSTOM_USER_TABLE . " u LEFT JOIN " . CUSTOM_USER_META_TABLE . " um ON um.user_id = u.ID";
    126126
    127         if ( $search_terms && bp_is_active( 'xprofile' ) || 'alphabetical' == $type )
    128             $sql['join_profiledata'] = "LEFT JOIN {$bp->profile->table_name_data} pd ON u.ID = pd.user_id";
    129 
    130127        $sql['where'] = 'WHERE ' . bp_core_get_status_sql( 'u.' );
    131128
     
    164161        }
    165162
    166         if ( $search_terms && bp_is_active( 'xprofile' ) ) {
     163        if ( $search_terms ) {
    167164            $search_terms = like_escape( $wpdb->escape( $search_terms ) );
    168             $sql['where_searchterms'] = "AND pd.value LIKE '%%$search_terms%%'";
     165            $sql['where_searchterms'] = "AND u.display_name LIKE '%%$search_terms%%'";
    169166        }
    170167
     
    177174                break;
    178175            case 'alphabetical':
    179                 $sql[] = "ORDER BY pd.value ASC";
     176                $sql[] = "ORDER BY u.display_name ASC";
    180177                break;
    181178            case 'random':
  • trunk/bp-groups/bp-groups-classes.php

    r2946 r2951  
    3838
    3939            /* Get group admins and mods */
    40             $admin_mods = $wpdb->get_results( $wpdb->prepare( "SELECT u.ID as user_id, u.user_login, u.user_email, u.user_nicename, m.is_admin, m.is_mod FROM {$wpdb->users} u, {$bp->groups->table_name_members} m WHERE u.ID = m.user_id AND m.group_id = %d AND ( m.is_admin = 1 OR m.is_mod = 1 )", $this->id ) );
     40            $admin_mods = $wpdb->get_results( apply_filters( 'bp_group_admin_mods_user_join_filter', $wpdb->prepare( "SELECT u.ID as user_id, u.user_login, u.user_email, u.user_nicename, m.is_admin, m.is_mod FROM {$wpdb->users} u, {$bp->groups->table_name_members} m WHERE u.ID = m.user_id AND m.group_id = %d AND ( m.is_admin = 1 OR m.is_mod = 1 )", $this->id ), $this->id ) );
    4141            foreach( (array)$admin_mods as $user ) {
    4242                if ( (int)$user->is_admin )
Note: See TracChangeset for help on using the changeset viewer.