Make WordPress Core

Ticket #20336: 20336.diff

File 20336.diff, 3.1 KB (added by nacin, 12 years ago)
  • wp-includes/class-wp-xmlrpc-server.php

     
    17601760                        return $this->error;
    17611761                }
    17621762
     1763                $page = get_page($page_id);
     1764                if ( ! $page )
     1765                        return new IXR_Error( 404, __( 'Invalid post ID.' ) );
     1766
    17631767                if ( !current_user_can( 'edit_page', $page_id ) )
    17641768                        return new IXR_Error( 401, __( 'Sorry, you cannot edit this page.' ) );
    17651769
    17661770                do_action('xmlrpc_call', 'wp.getPage');
    17671771
    1768                 // Lookup page info.
    1769                 $page = get_page($page_id);
    1770 
    17711772                // If we found the page then format the data.
    17721773                if ( $page->ID && ($page->post_type == 'page') ) {
    17731774                        // Get all of the page content and link.
     
    32083209                if ( !$user = $this->login($username, $password) )
    32093210                        return $this->error;
    32103211
     3212                $post_data = wp_get_single_post($post_ID, ARRAY_A);
     3213                if ( ! $post_data )
     3214                        return new IXR_Error( 404, __( 'Invalid post ID.' ) );
     3215                       
    32113216                if ( !current_user_can( 'edit_post', $post_ID ) )
    32123217                        return new IXR_Error( 401, __( 'Sorry, you cannot edit this post.' ) );
    32133218
    32143219                do_action('xmlrpc_call', 'blogger.getPost');
    32153220
    3216                 $post_data = wp_get_single_post($post_ID, ARRAY_A);
    3217 
    32183221                $categories = implode(',', wp_get_post_categories($post_ID));
    32193222
    32203223                $content  = '<title>'.stripslashes($post_data['post_title']).'</title>';
     
    41584161                if ( !$user = $this->login($username, $password) )
    41594162                        return $this->error;
    41604163
     4164                $postdata = wp_get_single_post($post_ID, ARRAY_A);
     4165                if ( ! $postdata )
     4166                        return new IXR_Error( 404, __( 'Invalid post ID.' ) );
     4167
    41614168                if ( !current_user_can( 'edit_post', $post_ID ) )
    41624169                        return new IXR_Error( 401, __( 'Sorry, you cannot edit this post.' ) );
    41634170
    41644171                do_action('xmlrpc_call', 'metaWeblog.getPost');
    41654172
    4166                 $postdata = wp_get_single_post($post_ID, ARRAY_A);
    4167 
    41684173                if ($postdata['post_date'] != '') {
    41694174                        $post_date = $this->_convert_date( $postdata['post_date'] );
    41704175                        $post_date_gmt = $this->_convert_date_gmt( $postdata['post_date_gmt'],  $postdata['post_date'] );
     
    46264631                if ( !$user = $this->login($username, $password) )
    46274632                        return $this->error;
    46284633
     4634                if ( ! get_post( $post_ID ) )
     4635                        return new IXR_Error( 404, __( 'Invalid post ID.' ) );
     4636
    46294637                if ( !current_user_can( 'edit_post', $post_ID ) )
    46304638                        return new IXR_Error( 401, __( 'Sorry, you can not edit this post.' ) );
    46314639
     
    46694677
    46704678                do_action('xmlrpc_call', 'mt.setPostCategories');
    46714679
     4680                if ( ! get_post( $post_ID ) )
     4681                        return new IXR_Error( 404, __( 'Invalid post ID.' ) );
     4682
    46724683                if ( !current_user_can('edit_post', $post_ID) )
    46734684                        return new IXR_Error(401, __('Sorry, you cannot edit this post.'));
    46744685
     
    47764787
    47774788                do_action('xmlrpc_call', 'mt.publishPost');
    47784789
     4790                $postdata = wp_get_single_post($post_ID,ARRAY_A);
     4791                if ( ! $postdata )
     4792                        return new IXR_Error( 404, __( 'Invalid post ID.' ) );
     4793
    47794794                if ( !current_user_can('publish_posts') || !current_user_can('edit_post', $post_ID) )
    47804795                        return new IXR_Error(401, __('Sorry, you cannot publish this post.'));
    47814796
    4782                 $postdata = wp_get_single_post($post_ID,ARRAY_A);
    4783 
    47844797                $postdata['post_status'] = 'publish';
    47854798
    47864799                // retain old cats