Changeset 2702 for trunk/wp-admin/admin-db.php
- Timestamp:
- 07/09/2005 01:27:46 AM (21 years ago)
- File:
-
- 1 edited
-
trunk/wp-admin/admin-db.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/admin-db.php
r2701 r2702 14 14 $level_key = $wpdb->prefix . 'user_level'; 15 15 if ( 1 < $user->user_level ) { 16 $editable = $wpdb->get_col("SELECT user_id FROM $wpdb->usermeta WHERE meta_key = '$level_key' AND meta_value <= '$user->user_level' AND user_id != $user_id"); 17 if( is_array( $editable ) == false ) 16 $editable = get_editable_user_ids( $user_id ); 17 18 if( !$editable ) { 18 19 $other_drafts = ''; 19 else {20 } else { 20 21 $editable = join(',', $editable); 21 $other_drafts = $wpdb->get_results("SELECT ID, post_title FROM $wpdb->posts WHERE post_status = 'draft' AND post_author IN ($editable) ");22 $other_drafts = $wpdb->get_results("SELECT ID, post_title FROM $wpdb->posts WHERE post_status = 'draft' AND post_author IN ($editable) AND post_author != '$user_id' "); 22 23 } 23 24 } else { … … 27 28 } 28 29 30 function get_editable_authors( $user_id ) { 31 global $wpdb; 32 $user = get_userdata( $user_id ); 33 $level_key = $wpdb->prefix . 'user_level'; 34 35 if ( 7 > $user->user_level ) // TODO: ROLE SYSTEM 36 return false; 37 38 $editable = get_editable_user_ids( $user_id ); 39 40 if( !$editable ) 41 return false; 42 else { 43 $editable = join(',', $editable); 44 $authors = $wpdb->get_results( "SELECT * FROM $wpdb->users WHERE ID IN ($editable)" ); 45 } 46 47 return apply_filters('get_editable_authors', $authors); 48 } 49 50 function get_editable_user_ids( $user_id, $exclude_zeros = true ) { 51 global $wpdb; 52 $user = get_userdata( $user_id ); 53 $level_key = $wpdb->prefix . 'user_level'; 54 55 $query = "SELECT * FROM $wpdb->usermeta WHERE meta_key = '$level_key'"; 56 if ( $exclude_zeros ) 57 $query .= " AND meta_value != '0'"; 58 $possible = $wpdb->get_results( $query ); 59 60 if ( !$possible ) 61 return false; 62 63 $user_ids = array(); 64 foreach ( $possible as $mark ) 65 if ( intval($mark->meta_value) <= $user->user_level ) 66 $user_ids[] = $mark->user_id; 67 if ( empty( $user_ids ) ) 68 return false; 69 return $user_ids; 70 } 71 72 function get_author_user_ids() { 73 global $wpdb; 74 $level_key = $wpdb->prefix . 'user_level'; 75 76 $query = "SELECT user_id FROM $wpdb->usermeta WHERE meta_key = '$level_key' AND meta_value != '0'"; 77 78 return $wpdb->get_col( $query ); 79 } 80 81 function get_nonauthor_user_ids() { 82 global $wpdb; 83 $level_key = $wpdb->prefix . 'user_level'; 84 85 $query = "SELECT user_id FROM $wpdb->usermeta WHERE meta_key = '$level_key' AND meta_value = '0'"; 86 87 return $wpdb->get_col( $query ); 88 } 89 29 90 ?>
Note: See TracChangeset
for help on using the changeset viewer.