WordPress.org

Make WordPress Core

Ticket #22750: 22750.diff

File 22750.diff, 1.1 KB (added by koopersmith, 2 years ago)
  • wp-includes/js/media-models.js

     
    263263                        // Overload the `delete` request so attachments can be removed. 
    264264                        // This will permanently delete an attachment. 
    265265                        } else if ( 'delete' === method ) { 
     266                                this.destroyed = true; 
    266267                                options = options || {}; 
    267268                                options.context = this; 
    268269                                options.data = _.extend( options.data || {}, { 
     
    270271                                        id:       this.id, 
    271272                                        _wpnonce: this.get('nonces')['delete'] 
    272273                                }); 
    273                                 return media.ajax( options ); 
     274 
     275                                return media.ajax( options ).fail( function() { 
     276                                        this.destroyed = false; 
     277                                }); 
    274278                        } 
    275279                }, 
    276280 
     
    401405                        this.reset( this._source.filter( this.validator, this ) ); 
    402406                }, 
    403407 
     408                validateDestroyed: false, 
     409 
    404410                validator: function( attachment ) { 
     411                        if ( ! this.validateDestroyed && attachment.destroyed ) 
     412                                return false; 
    405413                        return _.all( this.filters, function( filter, key ) { 
    406414                                return !! filter.call( this, attachment ); 
    407415                        }, this );