Ticket #497: ticket-497.patch

File ticket-497.patch, 3.1 KB (added by so1o, 7 years ago)

user_status fix

  • bb-includes/cache.php

     
    1919                        $bb_user_cache[$user_id] = $this->read_cache(BBPATH . 'bb-cache/bb_user-' . $user_id); 
    2020                        return $bb_user_cache[$user_id]; 
    2121                else : 
    22                         if ( $user = $bbdb->get_row("SELECT * FROM $bbdb->users WHERE ID = $user_id AND user_status % 2 = 0") ) : 
     22                        if ( $user = $bbdb->get_row("SELECT * FROM $bbdb->users WHERE ID = $user_id") ) : 
    2323                                bb_append_meta( $user, 'user' ); 
    2424                        else : 
    2525                                $bb_user_cache[$user_id] = false; 
     
    6161                        endif; 
    6262                elseif ( 0 < count($ids) ) : 
    6363                        $sids = join(',', $ids); 
    64                         if ( $users = $bbdb->get_results("SELECT * FROM $bbdb->users WHERE ID IN ($sids) AND user_status % 2 = 0") ) 
     64                        if ( $users = $bbdb->get_results("SELECT * FROM $bbdb->users WHERE ID IN ($sids)") ) 
    6565                                bb_append_meta( $users, 'user' ); 
    6666                endif; 
    6767 
  • bb-includes/pluggable.php

     
    2020        $user = user_sanitize( $user ); 
    2121        if ( !$already_md5 ) { 
    2222                $pass = user_sanitize( md5( $pass ) ); 
    23                 return $bbdb->get_row("SELECT * FROM $bbdb->users WHERE user_login = '$user' AND SUBSTRING_INDEX( user_pass, '---', 1 ) = '$pass'"); 
     23                return $bbdb->get_row("SELECT * FROM $bbdb->users WHERE user_login = '$user' AND SUBSTRING_INDEX( user_pass, '---', 1 ) = '$pass' AND user_status % 2 = 0"); 
    2424        } else { 
    25                 return $bbdb->get_row("SELECT * FROM $bbdb->users WHERE user_login = '$user' AND MD5( user_pass ) = '$pass'"); 
     25                return $bbdb->get_row("SELECT * FROM $bbdb->users WHERE user_login = '$user' AND MD5( user_pass ) = '$pass' AND user_status % 2 = 0"); 
    2626        } 
    2727} 
    2828endif; 
  • bb-templates/profile-edit.php

     
    6262<?php endforeach; endif; ?> 
    6363<tr> 
    6464  <th scope="row"><?php _e('Delete user:'); ?></th> 
    65   <td><label for="user_status"><input type="checkbox" name="user_status" id="user_status" value="1" /> <?php _e('Check to delete user.  This cannot be easily undone.'); ?></label> 
     65  <td><label for="user_status"><input type="checkbox" name="user_status" id="user_status" value="1" <?php echo (1 == $user->user_status) ? 'checked' : '';?> /> <?php _e('Check to delete user.  This cannot be easily undone.'); ?></label> 
    6666  </td> 
    6767</tr> 
    6868</table> 
  • search.php

     
    77if ( !empty( $q ) ) : 
    88 
    99if ( strlen( preg_replace('/[^a-z0-9]/i', '', $q) ) > 2 ) { 
    10         $users = $bbdb->get_results("SELECT * FROM $bbdb->users WHERE user_login LIKE ('%$likeit%')"); 
     10        $users = $bbdb->get_results("SELECT * FROM $bbdb->users WHERE user_login LIKE ('%$likeit%') AND user_status % 2 = 0"); 
    1111        if ( $users ) 
    1212                bb_append_meta( $users, 'user' ); 
    1313}