Make WordPress Core

Changeset 22994


Ignore:
Timestamp:
12/03/2012 07:17:10 AM (13 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.