Make WordPress Core


Ignore:
Timestamp:
02/16/2008 09:44:50 PM (19 years ago)
Author:
ryan
Message:

users.php redesign. WIP

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/includes/user.php

    r6615 r6875  
    290290        var $search_term;
    291291        var $page;
     292        var $role;
    292293        var $raw_page;
    293294        var $users_per_page = 50;
     
    300301        var $search_errors;
    301302
    302         function WP_User_Search ($search_term = '', $page = '') { // constructor
     303        function WP_User_Search ($search_term = '', $page = '', $role = '') { // constructor
    303304                $this->search_term = $search_term;
    304305                $this->raw_page = ( '' == $page ) ? false : (int) $page;
    305306                $this->page = (int) ( '' == $page ) ? 1 : $page;
     307                $this->role = $role;
    306308
    307309                $this->prepare_query();
     
    315317                $this->first_user = ($this->page - 1) * $this->users_per_page;
    316318                $this->query_limit = 'LIMIT ' . $this->first_user . ',' . $this->users_per_page;
     319                $search_sql = '';
    317320                if ( $this->search_term ) {
    318321                        $searches = array();
     
    323326                        $search_sql .= ')';
    324327                }
    325                 $this->query_from_where = "FROM $wpdb->users WHERE 1=1 $search_sql";
     328               
     329                $this->query_from_where = "FROM $wpdb->users";
     330                if ( $this->role )
     331                        $this->query_from_where .= " INNER JOIN $wpdb->usermeta ON $wpdb->users.ID = $wpdb->usermeta.user_id WHERE $wpdb->usermeta.meta_key = '{$wpdb->prefix}capabilities' AND $wpdb->usermeta.meta_value LIKE '%$this->role%'";
     332                else
     333                        $this->query_from_where .= " WHERE 1=1";
     334                $this->query_from_where .= " $search_sql";
    326335
    327336        }
     
    346355                                'total' => ceil($this->total_users_for_query / $this->users_per_page),
    347356                                'current' => $this->page,
    348                                 'prev_text' => __('« Previous Page'),
    349                                 'next_text' => __('Next Page »'),
    350357                                'base' => 'users.php?%_%',
    351358                                'format' => 'userspage=%#%',
Note: See TracChangeset for help on using the changeset viewer.