WordPress.org

Make WordPress Core

Changeset 41344


Ignore:
Timestamp:
09/08/17 10:56:10 (3 months ago)
Author:
azaozz
Message:

Text widget: add the Add Media button and enable the wpview plugin to show embedded media previews in the editor.

Props westonruter, azaozz.
See #40854.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/js/editor.js

    r41151 r41344  
    563563        if ( settings.tinymce && settings.quicktags ) { 
    564564            var $textarea = $( '#' + id ); 
     565 
    565566            var $wrap = $( '<div>' ).attr( { 
    566567                    'class': 'wp-core-ui wp-editor-wrap tmce-active', 
    567568                    id: 'wp-' + id + '-wrap' 
    568569                } ); 
     570 
    569571            var $editorContainer = $( '<div class="wp-editor-container">' ); 
     572 
    570573            var $button = $( '<button>' ).attr( { 
    571574                    type: 'button', 
     
    573576                } ); 
    574577 
     578            var $editorTools = $( '<div class="wp-editor-tools">' ); 
     579 
     580            if ( settings.mediaButtons ) { 
     581                var buttonText = 'Add Media'; 
     582 
     583                if ( window._wpMediaViewsL10n && window._wpMediaViewsL10n.addMedia ) { 
     584                    buttonText = window._wpMediaViewsL10n.addMedia; 
     585                } 
     586 
     587                var $addMediaButton = $( '<button type="button" class="button insert-media add_media">' ); 
     588 
     589                $addMediaButton.append( '<span class="wp-media-buttons-icon"></span>' ); 
     590                $addMediaButton.append( document.createTextNode( ' ' + buttonText ) ); 
     591                $addMediaButton.data( 'editor', id ); 
     592 
     593                $editorTools.append( 
     594                    $( '<div class="wp-media-buttons">' ) 
     595                        .append( $addMediaButton ) 
     596                ); 
     597            } 
     598 
    575599            $wrap.append( 
    576                 $( '<div class="wp-editor-tools">' ) 
     600                $editorTools 
    577601                    .append( $( '<div class="wp-editor-tabs">' ) 
    578602                        .append( $button.clone().attr({ 
  • trunk/src/wp-admin/js/widgets/text-widgets.js

    r41260 r41344  
    231231                if ( typeof window.tinymce === 'undefined' ) { 
    232232                    wp.editor.initialize( id, { 
    233                         quicktags: true 
     233                        quicktags: true, 
     234                        mediaButtons: true 
    234235                    }); 
    235236 
     
    243244                } 
    244245 
     246                // Add or enable the `wpview` plugin. 
     247                $( document ).one( 'wp-before-tinymce-init.text-widget-init', function( event, init ) { 
     248                    // If somebody has removed all plugins, they must have a good reason. 
     249                    // Keep it that way. 
     250                    if ( ! init.plugins ) { 
     251                        return; 
     252                    } else if ( ! /\bwpview\b/.test( init.plugins ) ) { 
     253                        init.plugins += ',wpview'; 
     254                    } 
     255                } ); 
     256 
    245257                wp.editor.initialize( id, { 
    246258                    tinymce: { 
    247259                        wpautop: true 
    248260                    }, 
    249                     quicktags: true 
     261                    quicktags: true, 
     262                    mediaButtons: true 
    250263                }); 
    251264 
Note: See TracChangeset for help on using the changeset viewer.