WordPress.org

Make WordPress Core

Ticket #24716: 24716.27.diff

File 24716.27.diff, 2.3 KB (added by ericlewis, 3 years ago)
  • src/wp-includes/js/media-grid.js

    diff --git a/src/wp-includes/js/media-grid.js b/src/wp-includes/js/media-grid.js
    index 0ebbc67..29d2921 100644
    a b  
    233233                 * Open the Edit Attachment modal. 
    234234                 */ 
    235235                editAttachment: function( model ) { 
    236                         var library = this.state().get('library'), hasPrevious, hasNext; 
    237                         if ( library.indexOf( model ) > 0 ) { 
    238                                 hasPrevious = true; 
    239                         } 
    240                         else { 
    241                                 hasPrevious = false; 
    242                         } 
    243                         if ( library.indexOf( model ) < library.length - 1 ) { 
    244                                 hasNext = true; 
    245                         } 
    246                         else { 
    247                                 hasNext = false; 
    248                         } 
     236                        var library = this.state().get('library'); 
    249237 
    250                         new media.view.Frame.EditAttachment({ 
    251                                 hasPrevious:    hasPrevious, 
    252                                 hasNext:        hasNext, 
    253                                 model:          model, 
    254                                 gridController: this 
     238                        // Create a new EditAttachment frame, passing along the library and the attachment model. 
     239                        this.editAttachmentFrame = new media.view.Frame.EditAttachment({ 
     240                                library:        library, 
     241                                model:          model 
    255242                        }); 
     243 
     244                        // Listen to events on the edit attachment frame for triggering pagination callback handlers. 
     245                        this.listenTo( this.editAttachmentFrame, 'edit:attachment:next', this.editNextAttachment ); 
     246                        this.listenTo( this.editAttachmentFrame, 'edit:attachment:previous', this.editPreviousAttachment ); 
    256247                }, 
    257248 
    258249                /** 
     
    363354                                this.on( 'router:render', this.browseRouter, this ); 
    364355                        } 
    365356 
     357                        this.options.hasPrevious = ( this.options.library.indexOf( this.options.model ) > 0 ) ? true : false; 
     358                        this.options.hasNext = ( this.options.library.indexOf( this.options.model ) < this.options.library.length - 1 ) ? true : false; 
     359 
    366360                        // Initialize modal container view. 
    367361                        if ( this.options.modal ) { 
    368362                                this.modal = new media.view.Modal({ 
     
    471465                        if ( ! this.options.hasPrevious ) 
    472466                                return; 
    473467                        this.modal.close(); 
    474                         this.options.gridController.trigger( 'edit:attachment:previous', this.model ); 
     468                        this.trigger( 'edit:attachment:previous', this.model ); 
    475469                }, 
    476470 
    477471                /** 
     
    481475                        if ( ! this.options.hasNext ) 
    482476                                return; 
    483477                        this.modal.close(); 
    484                         this.options.gridController.trigger( 'edit:attachment:next', this.model ); 
     478                        this.trigger( 'edit:attachment:next', this.model ); 
    485479                } 
    486  
    487480        }); 
    488481 
    489482        media.view.GridFieldOptions = media.View.extend({