Make WordPress Core

Changeset 22994


Ignore:
Timestamp:
12/03/2012 07:17:10 AM (14 years ago)
Author:
ryan
Message:

In the QuickPress media modal, use the new post id when a post is published.

Props nacin, koopersmith
fixes #22673

Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/includes/ajax-actions.php

    r22979 r22994  
    16751675
    16761676function wp_ajax_set_post_thumbnail() {
    1677         $json = ! empty( $_REQUEST['json'] );
     1677        $json = ! empty( $_REQUEST['json'] ); // New-style request
    16781678
    16791679        $post_ID = intval( $_POST['post_id'] );
     
    16831683        $thumbnail_id = intval( $_POST['thumbnail_id'] );
    16841684
    1685         check_ajax_referer( "set_post_thumbnail-$post_ID" );
     1685        if ( $json )
     1686                check_ajax_referer( "update-post_$post_ID" );
     1687        else
     1688                check_ajax_referer( "set_post_thumbnail-$post_ID" );
    16861689
    16871690        if ( $thumbnail_id == '-1' ) {
  • trunk/wp-admin/includes/dashboard.php

    r22964 r22994  
    506506
    507507        $post_ID = (int) $post->ID;
     508
     509        $media_settings = array(
     510                'id' => $post->ID,
     511                'nonce' => wp_create_nonce( 'update-post_' . $post->ID ),
     512        );
     513
     514        if ( current_theme_supports( 'post-thumbnails', $post->post_type ) && post_type_supports( $post->post_type, 'thumbnail' ) ) {
     515                $featured_image_id = get_post_meta( $post->ID, '_thumbnail_id', true );
     516                $media_settings['featuredImageId'] = $featured_image_id ? $featured_image_id : -1;
     517        }
    508518?>
    509519
     
    525535                </div>
    526536
    527                 <script type="text/javascript">edCanvas = document.getElementById('content');edInsertContent = null;</script>
     537                <script type="text/javascript">
     538                edCanvas = document.getElementById('content');
     539                edInsertContent = null;
     540                <?php if ( $_POST ) : ?>
     541                wp.media.editor.remove('content');
     542                wp.media.view.settings.post = <?php echo json_encode( $media_settings ); // big juicy hack. ?>;
     543                wp.media.editor.add('content');
     544                <?php endif; ?>
     545                </script>
    528546
    529547                <div class="input-text-wrap" id="tags-input-wrap">
  • trunk/wp-includes/js/media-editor.js

    r22987 r22994  
    164164                        defaults: {
    165165                                order:      'ASC',
    166                                 id:         wp.media.view.settings.postId,
     166                                id:         wp.media.view.settings.post.id,
    167167                                itemtag:    'dl',
    168168                                icontag:    'dt',
     
    440440                        workflow.state('featured-image').on( 'select', function() {
    441441                                var settings = wp.media.view.settings,
    442                                         featuredImage = settings.featuredImage,
    443442                                        selection = this.get('selection').single();
    444443
    445                                 if ( ! featuredImage )
     444                                if ( ! settings.post.featuredImageId )
    446445                                        return;
    447446
    448                                 featuredImage.id = selection ? selection.id : -1;
     447                                settings.post.featuredImageId = selection ? selection.id : -1;
    449448                                wp.media.post( 'set-post-thumbnail', {
    450449                                        json:         true,
    451                                         post_id:      settings.postId,
    452                                         thumbnail_id: featuredImage.id,
    453                                         _wpnonce:     featuredImage.nonce
     450                                        post_id:      settings.post.id,
     451                                        thumbnail_id: settings.post.featuredImageId,
     452                                        _wpnonce:     settings.post.nonce
    454453                                }).done( function( html ) {
    455454                                        $( '.inside', '#postimagediv' ).html( html );
     
    527526                                        attachment: options,
    528527                                        html:       html,
    529                                         post_id:    wp.media.view.settings.postId
     528                                        post_id:    wp.media.view.settings.post.id
    530529                                }).done( function( resp ) {
    531530                                        wp.media.editor.insert( resp );
     
    539538                                        title:   embed.title,
    540539                                        html:    wp.media.string.link( embed ),
    541                                         post_id: wp.media.view.settings.postId
     540                                        post_id: wp.media.view.settings.post.id
    542541                                }).done( function( resp ) {
    543542                                        wp.media.editor.insert( resp );
     
    615614                        // Update the featured image id when the 'remove' link is clicked.
    616615                        }).on( 'click', '#remove-post-thumbnail', function() {
    617                                 wp.media.view.settings.featuredImage.id = -1;
     616                                wp.media.view.settings.post.featuredImageId = -1;
    618617                        });
    619618                }
  • trunk/wp-includes/js/media-models.js

    r22987 r22994  
    245245                                        id:      this.id,
    246246                                        nonce:   this.get('nonces').update,
    247                                         post_id: media.model.settings.postId
     247                                        post_id: media.model.settings.post.id
    248248                                });
    249249
     
    290290                                id:      this.id,
    291291                                nonce:   this.get('nonces').update,
    292                                 post_id: media.model.settings.postId
     292                                post_id: media.model.settings.post.id
    293293                        }, data ) ).done( function( resp, status, xhr ) {
    294294                                model.set( model.parse( resp, xhr ), options );
     
    549549
    550550                        return media.post( 'save-attachment-order', {
    551                                 nonce:       media.model.settings.updatePostNonce,
    552                                 post_id:     media.model.settings.postId,
     551                                nonce:       media.model.settings.post.nonce,
     552                                post_id:     media.model.settings.post.id,
    553553                                attachments: attachments
    554554                        });
     
    706706                                options.data = _.extend( options.data || {}, {
    707707                                        action:  'query-attachments',
    708                                         post_id: media.model.settings.postId
     708                                        post_id: media.model.settings.post.id
    709709                                });
    710710
  • trunk/wp-includes/js/media-views.js

    r22993 r22994  
    1313        delete l10n.settings;
    1414
    15         // Copy the `postId` setting over to the model settings.
    16         media.model.settings.postId = media.view.settings.postId;
    17         media.model.settings.updatePostNonce = media.view.settings.nonce.updatePost;
     15        // Copy the `post` setting over to the model settings.
     16        media.model.settings.post = media.view.settings.post;
    1817
    1918        // Check if the browser supports CSS 3.0 transitions
     
    608607                activate: function() {
    609608                        var selection = this.get('selection'),
    610                                 id = media.view.settings.featuredImage.id,
     609                                id = media.view.settings.post.featuredImageId,
    611610                                attachment;
    612611
     
    14841483
    14851484
    1486                         if ( media.view.settings.featuredImage ) {
     1485                        if ( media.view.settings.post.featuredImageId ) {
    14871486                                this.states.add( new media.controller.FeaturedImage({
    14881487                                        controller: this,
     
    15361535                        });
    15371536
    1538                         if ( media.view.settings.featuredImage ) {
     1537                        if ( media.view.settings.post.featuredImageId ) {
    15391538                                this.menu.view().set( 'featured-image', {
    15401539                                        text: l10n.featuredImageTitle,
     
    18631862
    18641863                ready: function() {
    1865                         var postId = media.view.settings.postId,
     1864                        var postId = media.view.settings.post.id,
    18661865                                dropzone;
    18671866
     
    19141913
    19151914                        if ( _.isUndefined( this.options.postId ) )
    1916                                 this.options.postId = media.view.settings.postId;
     1915                                this.options.postId = media.view.settings.post.id;
    19171916
    19181917                        this.views.set( '.upload-inline-status', new media.view.UploaderStatus({
     
    30783077                },
    30793078
    3080                 filters: {},
    30813079                keys: [],
    30823080
    30833081                initialize: function() {
     3082                        this.createFilters();
     3083
    30843084                        // Build `<option>` elements.
    30853085                        this.$el.html( _.chain( this.filters ).map( function( filter, value ) {
     
    30943094                },
    30953095
     3096                createFilters: function() {
     3097                        this.filters = {};
     3098                },
     3099
    30963100                change: function( event ) {
    30973101                        var filter = this.filters[ this.el.value ];
     
    31203124
    31213125        media.view.AttachmentFilters.Uploaded = media.view.AttachmentFilters.extend({
    3122                 filters: {
    3123                         all: {
    3124                                 text:  l10n.allMediaItems,
    3125                                 props: {
    3126                                         uploadedTo: null,
    3127                                         orderby: 'date',
    3128                                         order:   'DESC'
     3126                createFilters: function() {
     3127                        this.filters = {
     3128                                all: {
     3129                                        text:  l10n.allMediaItems,
     3130                                        props: {
     3131                                                uploadedTo: null,
     3132                                                orderby: 'date',
     3133                                                order:   'DESC'
     3134                                        },
     3135                                        priority: 10
    31293136                                },
    3130                                 priority: 10
    3131                         },
    3132 
    3133                         uploaded: {
    3134                                 text:  l10n.uploadedToThisPost,
    3135                                 props: {
    3136                                         uploadedTo: media.view.settings.postId,
    3137                                         orderby: 'menuOrder',
    3138                                         order:   'ASC'
    3139                                 },
    3140                                 priority: 20
    3141                         }
     3137
     3138                                uploaded: {
     3139                                        text:  l10n.uploadedToThisPost,
     3140                                        props: {
     3141                                                uploadedTo: media.view.settings.post.id,
     3142                                                orderby: 'menuOrder',
     3143                                                order:   'ASC'
     3144                                        },
     3145                                        priority: 20
     3146                                }
     3147                        };
    31423148                }
    31433149        });
    31443150
    31453151        media.view.AttachmentFilters.All = media.view.AttachmentFilters.extend({
    3146                 filters: (function() {
     3152                createFilters: function() {
    31473153                        var filters = {};
    31483154
     
    31743180                                props: {
    31753181                                        type:    null,
    3176                                         uploadedTo: media.view.settings.postId,
     3182                                        uploadedTo: media.view.settings.post.id,
    31773183                                        orderby: 'menuOrder',
    31783184                                        order:   'ASC'
     
    31813187                        };
    31823188
    3183                         return filters;
    3184                 }())
     3189                        this.filters = filters;
     3190                }
    31853191        });
    31863192
  • trunk/wp-includes/js/plupload/wp-plupload.js

    r22974 r22994  
    158158                                        filename:  file.name,
    159159                                        menuOrder: 0,
    160                                         uploadedTo: wp.media.model.settings.postId
     160                                        uploadedTo: wp.media.model.settings.post.id
    161161                                }, _.pick( file, 'loaded', 'size', 'percent' ) );
    162162
  • trunk/wp-includes/media.php

    r22991 r22994  
    14281428                        'sendToEditor' => wp_create_nonce( 'media-send-to-editor' ),
    14291429                ),
    1430                 'postId'    => 0,
     1430                'post'    => array(
     1431                        'id' => 0,
     1432                ),
    14311433        );
    14321434
     
    14341436        if ( isset( $args['post'] ) ) {
    14351437                $post = get_post( $args['post'] );
    1436                 $settings['postId'] = $post->ID;
    1437                 $settings['nonce']['updatePost'] = wp_create_nonce( 'update-post_' . $post->ID );
     1438                $settings['post'] = array(
     1439                        'id' => $post->ID,
     1440                        'nonce' => wp_create_nonce( 'update-post_' . $post->ID ),
     1441                );
    14381442
    14391443                if ( current_theme_supports( 'post-thumbnails', $post->post_type ) && post_type_supports( $post->post_type, 'thumbnail' ) ) {
    1440 
    1441                         $featuredImageId = get_post_meta( $post->ID, '_thumbnail_id', true );
    1442 
    1443                         $settings['featuredImage'] = array(
    1444                                 'id'    => $featuredImageId ? $featuredImageId : -1,
    1445                                 'nonce' => wp_create_nonce( 'set_post_thumbnail-' . $post->ID ),
    1446                         );
     1444                        $featured_image_id = get_post_meta( $post->ID, '_thumbnail_id', true );
     1445                        $settings['post']['featuredImageId'] = $featured_image_id ? $featured_image_id : -1;
    14471446                }
    14481447        }
  • trunk/wp-includes/script-loader.php

    r22947 r22994  
    324324                'settings' => array(
    325325                        'ajaxurl' => admin_url( 'admin-ajax.php', 'relative' ),
    326                         'postId'  => 0,
     326                        'post' => array( 'id' => 0 ),
    327327                ),
    328328        ) );
Note: See TracChangeset for help on using the changeset viewer.