Make WordPress Core

Changeset 7781


Ignore:
Timestamp:
04/22/2008 11:54:13 PM (16 years ago)
Author:
ryan
Message:

don't get or set post_lock if you can't edit the post/page. Props mdawaffe

Location:
trunk/wp-admin
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/page.php

    r7759 r7781  
    8484    wp_enqueue_script('thickbox');
    8585    wp_enqueue_script('media-upload');
    86     if ( $last = wp_check_post_lock( $post->ID ) ) {
    87         $last_user = get_userdata( $last );
    88         $last_user_name = $last_user ? $last_user->display_name : __('Somebody');
    89         $message = sprintf( __( 'Warning: %s is currently editing this page' ), wp_specialchars( $last_user_name ) );
    90         $message = str_replace( "'", "\'", "<div class='error'><p>$message</p></div>" );
    91         add_action('admin_notices', create_function( '', "echo '$message';" ) );
    92     } else {
    93         wp_set_post_lock( $post->ID );
    94         wp_enqueue_script('autosave');
     86
     87    if ( current_user_can('edit_page', $page_ID) ) {
     88        if ( $last = wp_check_post_lock( $post->ID ) ) {
     89            $last_user = get_userdata( $last );
     90            $last_user_name = $last_user ? $last_user->display_name : __('Somebody');
     91            $message = sprintf( __( 'Warning: %s is currently editing this page' ), wp_specialchars( $last_user_name ) );
     92            $message = str_replace( "'", "\'", "<div class='error'><p>$message</p></div>" );
     93            add_action('admin_notices', create_function( '', "echo '$message';" ) );
     94        } else {
     95            wp_set_post_lock( $post->ID );
     96            wp_enqueue_script('autosave');
     97        }
    9598    }
    9699
  • trunk/wp-admin/post.php

    r7761 r7781  
    9191    wp_enqueue_script('thickbox');
    9292    wp_enqueue_script('media-upload');
    93     if ( $last = wp_check_post_lock( $post->ID ) ) {
    94         $last_user = get_userdata( $last );
    95         $last_user_name = $last_user ? $last_user->display_name : __('Somebody');
    96         $message = sprintf( __( 'Warning: %s is currently editing this post' ), wp_specialchars( $last_user_name ) );
    97         $message = str_replace( "'", "\'", "<div class='error'><p>$message</p></div>" );
    98         add_action('admin_notices', create_function( '', "echo '$message';" ) );
    99     } else {
    100         wp_set_post_lock( $post->ID );
    101         wp_enqueue_script('autosave');
     93
     94    if ( current_user_can('edit_post', $post_ID) ) {
     95        if ( $last = wp_check_post_lock( $post->ID ) ) {
     96            $last_user = get_userdata( $last );
     97            $last_user_name = $last_user ? $last_user->display_name : __('Somebody');
     98            $message = sprintf( __( 'Warning: %s is currently editing this post' ), wp_specialchars( $last_user_name ) );
     99            $message = str_replace( "'", "\'", "<div class='error'><p>$message</p></div>" );
     100            add_action('admin_notices', create_function( '', "echo '$message';" ) );
     101        } else {
     102            wp_set_post_lock( $post->ID );
     103            wp_enqueue_script('autosave');
     104        }
    102105    }
    103106
Note: See TracChangeset for help on using the changeset viewer.