Changeset 2703
- Timestamp:
- 07/11/2005 10:39:50 PM (20 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/post.php
r2702 r2703 67 67 $post_ID = $p = (int) $_GET['post']; 68 68 69 if ( ! user_can_edit_post($user_ID, $post_ID) )69 if ( !current_user_can('edit_post', $post_ID) ) 70 70 die ( __('You are not allowed to edit this post.') ); 71 71 -
trunk/wp-admin/upgrade-functions.php
r2702 r2703 227 227 if ( !empty( $user->user_nickname ) ) 228 228 update_usermeta( $user->ID, 'nickname', $wpdb->escape($user->user_nickname) ); 229 if ( !empty( $user->user_level ) ) 229 if ( !empty( $user->user_level ) ) { 230 230 update_usermeta( $user->ID, $table_prefix . 'user_level', $user->user_level ); 231 $role = translate_level_to_role($user->user_level); 232 update_usermeta( $user->ID, $table_prefix . 'capabilities', array($role => true) ); 233 } 231 234 if ( !empty( $user->user_icq ) ) 232 235 update_usermeta( $user->ID, 'icq', $wpdb->escape($user->user_icq) ); … … 750 753 return $template; 751 754 } 755 756 function translate_level_to_role($level) { 757 switch ($level) { 758 case 10: 759 case 9: 760 case 8: 761 return 'publisher'; 762 case 7: 763 case 6: 764 case 5: 765 return 'managing_editor'; 766 case 4: 767 case 3: 768 return 'copy_editor'; 769 case 2: 770 return 'staff_writer'; 771 case 1: 772 return 'freelancer'; 773 case 0: 774 return 'visitor'; 775 } 776 } 777 752 778 ?> -
trunk/wp-admin/upgrade-schema.php
r2702 r2703 217 217 add_option('use_trackback', 0); 218 218 219 populate_roles(); 220 219 221 // Delete unused options 220 222 $unusedoptions = array ('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url'); … … 230 232 } 231 233 234 function populate_roles() { 235 global $table_prefix; 236 237 $roles = array ('administrator' => 238 array('name' => __('Administrator'), 239 'capabilities' => array( 240 'edit_posts' => true, 241 'edit_others_posts' => true, 242 'edit_published_posts' => true, 243 'publish_posts' => true, 244 'edit_pages' => true, 245 'manage_categories' => true, 246 'manage_links' => true, 247 'upload_images' => true, 248 'manage_options' => true, 249 'switch_themes' => true, 250 'edit_themes' => true, 251 'activate_plugins' => true, 252 'edit_plugins' => true, 253 'edit_users' => true, 254 'edit_files' => true, 255 'read' => true, 256 'level_10' => true, 257 'level_9' => true, 258 'level_8' => true 259 )), 260 261 'editor' => 262 array('name' => __('Editor'), 263 'capabilities' => array( 264 'edit_posts' => true, 265 'edit_others_posts' => true, 266 'edit_published_posts' => true, 267 'publish_posts' => true, 268 'edit_pages' => true, 269 'manage_categories' => true, 270 'manage_links' => true, 271 'upload_images' => true, 272 'read' => true, 273 'level_7' => true, 274 'level_6' => true, 275 'level_5' => true 276 )), 277 278 'author' => 279 array('name' => __('Author'), 280 'capabilities' => array( 281 'edit_posts' => true, 282 'publish_posts' => true, 283 'upload_images' => true, 284 'read' => true, 285 'level_2' => true 286 )), 287 288 'contributor' => 289 array('name' => __('Contributor'), 290 'capabilities' => array( 291 'edit_posts' => true, 292 'read' => true, 293 'level_1' => true 294 )), 295 296 'subscriber' => 297 array('name' => __('Subscriber'), 298 'capabilities' => array( 299 'read' => true, 300 'level_0' => true 301 )), 302 303 'inactive' => 304 array('name' => __('Inactive'), 305 'capabilities' => array()) 306 ); 307 308 add_option($table_prefix . 'user_roles', $roles); 309 } 232 310 ?> -
trunk/wp-includes/functions.php
r2702 r2703 1219 1219 function update_category_cache() { 1220 1220 global $cache_categories, $wpdb; 1221 $dogs = $wpdb->get_results("SELECT * FROM $wpdb->categories"); 1222 foreach ($dogs as $catt) 1223 $cache_categories[$catt->cat_ID] = $catt; 1224 } 1225 1226 function update_user_cache() { 1227 global $cache_userdata, $wpdb; 1228 $level_key = $wpdb->prefix . 'user_level'; 1229 $user_ids = $wpdb->get_col("SELECT user_id FROM $wpdb->usermeta WHERE meta_key = '$level_key'"); 1230 $user_ids = join(',', $user_ids); 1231 $query = apply_filters('user_cache_query', "SELECT * FROM $wpdb->users WHERE ID IN ($user_ids)"); 1232 if ( $users = $wpdb->get_results( $query ) ) : 1233 foreach ($users as $user) : 1234 $metavalues = $wpdb->get_results("SELECT meta_key, meta_value FROM $wpdb->usermeta WHERE user_id = '$user->ID'"); 1235 foreach ( $metavalues as $meta ) { 1236 $user->{$meta->meta_key} = $meta->meta_value; 1237 // We need to set user_level from meta, not row 1238 if ( $wpdb->prefix . 'user_level' == $meta->meta_key ) 1239 $user->user_level = $meta->meta_value; 1240 } 1241 1242 $cache_userdata[$user->ID] = $user; 1243 $cache_userdata[$user->user_login] =& $cache_userdata[$user->ID]; 1244 endforeach; 1221 if($dogs = $wpdb->get_results("SELECT * FROM $wpdb->categories")): 1222 foreach ($dogs as $catt) 1223 $cache_categories[$catt->cat_ID] = $catt; 1245 1224 return true; 1246 else :1225 else: 1247 1226 return false; 1248 1227 endif; … … 1960 1939 } 1961 1940 1941 function get_usermeta( $user_id, $meta_key = '') { 1942 global $wpdb; 1943 $user_id = (int) $user_id; 1944 1945 if ( !empty($meta_key) ) { 1946 $meta_key = preg_replace('|a-z0-9_|i', '', $meta_key); 1947 $metas = $wpdb->get_results("SELECT * FROM $wpdb->usermeta WHERE user_id = '$user_id' AND meta_key = '$meta_key'"); 1948 } else { 1949 $metas = $wpdb->get_results("SELECT * FROM $wpdb->usermeta WHERE user_id = '$user_id'"); 1950 } 1951 1952 foreach ($metas as $index => $meta) { 1953 @ $value = unserialize($meta->meta_key); 1954 if ($value !== FALSE) 1955 $metas[$index]->meta_key = $value; 1956 } 1957 1958 if ( !empty($meta_key) ) 1959 return $metas[0]; 1960 else 1961 return $metas; 1962 } 1963 1962 1964 function update_usermeta( $user_id, $meta_key, $meta_value ) { 1963 1965 global $wpdb; … … 1965 1967 return false; 1966 1968 $meta_key = preg_replace('|a-z0-9_|i', '', $meta_key); 1969 1970 if ( is_array($meta_value) || is_object($meta_value) ) 1971 $meta_value = serialize($meta_value); 1972 1967 1973 $cur = $wpdb->get_row("SELECT * FROM $wpdb->usermeta WHERE user_id = '$user_id' AND meta_key = '$meta_key'"); 1968 1974 if ( !$cur ) { -
trunk/wp-includes/pluggable-functions.php
r2702 r2703 20 20 $user_pass_md5 = md5($userdata->user_pass); 21 21 $user_identity = $userdata->display_name; 22 $current_user = $userdata; 22 23 if ( empty($current_user) ) 24 $current_user = new WP_User($user_ID); 23 25 } 24 26 endif; … … 30 32 if ( $user_id == 0 ) 31 33 return false; 32 34 33 35 if ( isset( $cache_userdata[$user_id] ) ) 34 36 return $cache_userdata[$user_id]; … … 40 42 41 43 foreach ( $metavalues as $meta ) { 42 $user->{$meta->meta_key} = $meta->meta_value; 44 @ $value = unserialize($meta->meta_value); 45 if ($value === FALSE) 46 $value = $meta->meta_value; 47 $user->{$meta->meta_key} = $value; 48 43 49 // We need to set user_level from meta, not row 44 50 if ( $wpdb->prefix . 'user_level' == $meta->meta_key ) -
trunk/wp-settings.php
r2701 r2703 75 75 76 76 $wpdb->hide_errors(); 77 if ( !update_ user_cache() && (!strstr($_SERVER['PHP_SELF'], 'install.php') && !defined('WP_INSTALLING')) ) {77 if ( !update_category_cache() && (!strstr($_SERVER['PHP_SELF'], 'install.php') && !defined('WP_INSTALLING')) ) { 78 78 if ( strstr($_SERVER['PHP_SELF'], 'wp-admin') ) 79 79 $link = 'install.php'; … … 86 86 require (ABSPATH . WPINC . '/functions-formatting.php'); 87 87 require (ABSPATH . WPINC . '/functions-post.php'); 88 require (ABSPATH . WPINC . '/capabilities.php'); 88 89 require (ABSPATH . WPINC . '/classes.php'); 89 90 require (ABSPATH . WPINC . '/template-functions-general.php'); … … 161 162 $wp_rewrite = new WP_Rewrite(); 162 163 $wp = new WP(); 164 $wp_roles = new WP_Roles(); 163 165 164 166 // Everything is loaded and initialized.
Note: See TracChangeset
for help on using the changeset viewer.