Make WordPress Core

Changeset 31868


Ignore:
Timestamp:
03/24/2015 01:32:17 AM (11 years ago)
Author:
azaozz
Message:

Press This:

  • Fix the links on inserted images to point to the source site.
  • Fix inserting of images above the blockquote when the editor has not been focused.

Fixes #31745.

Location:
trunk/src/wp-admin
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/includes/class-wp-press-this.php

    r31837 r31868  
    10811081                $site_data = array(
    10821082                        'v' => ! empty( $data['v'] ) ? $data['v'] : '',
     1083                        'u' => ! empty( $data['u'] ) ? $data['u'] : '',
    10831084                        'hasData' => ! empty( $data ),
    10841085                );
  • trunk/src/wp-admin/js/press-this.js

    r31807 r31868  
    195195                 * @param link string Optional destination link, for images (defaults to src)
    196196                 */
    197                 function insertSelectedMedia( type, src, link ) {
    198                         var newContent = '';
     197                function insertSelectedMedia( $element ) {
     198                        var src, link, newContent = '';
    199199
    200200                        if ( ! editor ) {
     
    202202                        }
    203203
    204                         src = checkUrl( src );
    205                         link = checkUrl( link );
    206 
    207                         if ( 'img' === type ) {
     204                        src = checkUrl( $element.attr( 'data-wp-src' ) || '' );
     205                        link = checkUrl( data.u );
     206
     207                        if ( $element.hasClass( 'is-image' ) ) {
    208208                                if ( ! link ) {
    209209                                        link = src;
    210210                                }
    211211
    212                                 newContent = '<a href="' + link + '"><img class="alignnone size-full" src="' + src + '" /></a>\n';
     212                                newContent = '<a href="' + link + '"><img class="alignnone size-full" src="' + src + '" /></a>';
    213213                        } else {
    214                                 newContent = '[embed]' + src + '[/embed]\n';
     214                                newContent = '[embed]' + src + '[/embed]';
    215215                        }
    216216
    217217                        if ( ! hasSetFocus ) {
    218                                 editor.focus();
    219                         }
    220 
    221                         editor.execCommand( 'mceInsertContent', false, newContent );
    222                         hasSetFocus = true;
     218                                editor.setContent( '<p>' + newContent + '</p>' + editor.getContent() );
     219                        } else {
     220                                editor.execCommand( 'mceInsertContent', false, newContent );
     221                        }
    223222                }
    224223
     
    335334                        var $element = $mediaThumbWrap.clone().addClass( 'is-image' );
    336335
    337                         $element.css( 'background-image', 'url(' + displaySrc + ')' )
     336                        $element.attr( 'data-wp-src', src ).css( 'background-image', 'url(' + displaySrc + ')' )
    338337                                .find( 'span' ).text( __( 'suggestedImgAlt' ).replace( '%d', i + 1 ) );
    339338
    340                         $element.on( 'click keypress', function ( event ) {
    341                                 if ( event.type === 'click' || event.keyCode === 13 ) {
    342                                         insertSelectedMedia( 'img', src, data.u );
    343                                 }
    344                         } ).appendTo( $mediaList );
     339                        $mediaList.append( $element );
    345340                }
    346341
     
    379374                                        }
    380375
    381                                         $element.find( 'span' ).text( __( 'suggestedEmbedAlt' ).replace( '%d', i + 1 ) );
     376                                        $element.attr( 'data-wp-src', src ).find( 'span' ).text( __( 'suggestedEmbedAlt' ).replace( '%d', i + 1 ) );
    382377
    383378                                        if ( displaySrc ) {
     
    385380                                        }
    386381
    387                                         $element.on( 'click keypress', function ( event ) {
    388                                                 if ( event.type === 'click' || event.keyCode === 13 ) {
    389                                                         insertSelectedMedia( 'embed', src );
    390                                                 }
    391                                         } ).appendTo( $mediaList );
    392 
     382                                        $mediaList.append( $element );
    393383                                        found++;
    394384                                } );
     
    580570                                        hasSetFocus = true;
    581571                                } );
     572                        }).on( 'click.press-this keypress.press-this', '.suggested-media-thumbnail', function( event ) {
     573                                if ( event.type === 'click' || event.keyCode === 13 ) {
     574                                        insertSelectedMedia( $( this ) );
     575                                }
    582576                        });
    583577
Note: See TracChangeset for help on using the changeset viewer.