WordPress.org

Make WordPress Core

Ticket #19730: 19730.patch

File 19730.patch, 4.2 KB (added by SergeyBiryukov, 4 years ago)
  • wp-admin/includes/class-wp-media-list-table.php

     
    354354        function _get_row_actions( $post, $att_title ) { 
    355355                $actions = array(); 
    356356 
     357                $referer = urlencode( stripslashes( $_SERVER['REQUEST_URI'] ) ); 
     358 
    357359                if ( $this->detached ) { 
    358360                        if ( current_user_can( 'edit_post', $post->ID ) ) 
    359361                                $actions['edit'] = '<a href="' . get_edit_post_link( $post->ID, true ) . '">' . __( 'Edit' ) . '</a>'; 
    360362                        if ( current_user_can( 'delete_post', $post->ID ) ) 
    361363                                if ( EMPTY_TRASH_DAYS && MEDIA_TRASH ) { 
    362                                         $actions['trash'] = "<a class='submitdelete' href='" . wp_nonce_url( "post.php?action=trash&amp;post=$post->ID", 'trash-attachment_' . $post->ID ) . "'>" . __( 'Trash' ) . "</a>"; 
     364                                        $nonce_url = wp_nonce_url( "post.php?action=trash&amp;post=$post->ID", 'trash-attachment_' . $post->ID ); 
     365                                        $submit_url = esc_url( admin_url( add_query_arg( '_wp_http_referer', $referer, $nonce_url ) ) ); 
     366                                        $actions['trash'] = "<a class='submitdelete' href='$submit_url'>" . __( 'Trash' ) . "</a>"; 
    363367                                } else { 
    364368                                        $delete_ays = !MEDIA_TRASH ? " onclick='return showNotice.warn();'" : ''; 
    365                                         $actions['delete'] = "<a class='submitdelete'$delete_ays href='" . wp_nonce_url( "post.php?action=delete&amp;post=$post->ID", 'delete-attachment_' . $post->ID ) . "'>" . __( 'Delete Permanently' ) . "</a>"; 
     369                                        $nonce_url = wp_nonce_url( "post.php?action=delete&amp;post=$post->ID", 'delete-attachment_' . $post->ID ); 
     370                                        $submit_url = esc_url( admin_url( add_query_arg( '_wp_http_referer', $referer, $nonce_url ) ) ); 
     371                                        $actions['delete'] = "<a class='submitdelete'$delete_ays href='$submit_url'>" . __( 'Delete Permanently' ) . "</a>"; 
    366372                                } 
    367373                        $actions['view'] = '<a href="' . get_permalink( $post->ID ) . '" title="' . esc_attr( sprintf( __( 'View &#8220;%s&#8221;' ), $att_title ) ) . '" rel="permalink">' . __( 'View' ) . '</a>'; 
    368374                        if ( current_user_can( 'edit_post', $post->ID ) ) 
     
    372378                        if ( current_user_can( 'edit_post', $post->ID ) && !$this->is_trash ) 
    373379                                $actions['edit'] = '<a href="' . get_edit_post_link( $post->ID, true ) . '">' . __( 'Edit' ) . '</a>'; 
    374380                        if ( current_user_can( 'delete_post', $post->ID ) ) { 
    375                                 if ( $this->is_trash ) 
    376                                         $actions['untrash'] = "<a class='submitdelete' href='" . wp_nonce_url( "post.php?action=untrash&amp;post=$post->ID", 'untrash-attachment_' . $post->ID ) . "'>" . __( 'Restore' ) . "</a>"; 
    377                                 elseif ( EMPTY_TRASH_DAYS && MEDIA_TRASH ) 
    378                                         $actions['trash'] = "<a class='submitdelete' href='" . wp_nonce_url( "post.php?action=trash&amp;post=$post->ID", 'trash-attachment_' . $post->ID ) . "'>" . __( 'Trash' ) . "</a>"; 
     381                                if ( $this->is_trash ) { 
     382                                        $nonce_url = wp_nonce_url( "post.php?action=untrash&amp;post=$post->ID", 'untrash-attachment_' . $post->ID ); 
     383                                        $submit_url = esc_url( admin_url( add_query_arg( '_wp_http_referer', $referer, $nonce_url ) ) ); 
     384                                        $actions['untrash'] = "<a class='submitdelete' href='$submit_url'>" . __( 'Restore' ) . "</a>"; 
     385                                } elseif ( EMPTY_TRASH_DAYS && MEDIA_TRASH ) { 
     386                                        $nonce_url = wp_nonce_url( "post.php?action=trash&amp;post=$post->ID", 'trash-attachment_' . $post->ID ); 
     387                                        $submit_url = esc_url( admin_url( add_query_arg( '_wp_http_referer', $referer, $nonce_url ) ) ); 
     388                                        $actions['trash'] = "<a class='submitdelete' href='$submit_url'>" . __( 'Trash' ) . "</a>"; 
     389                                } 
    379390                                if ( $this->is_trash || !EMPTY_TRASH_DAYS || !MEDIA_TRASH ) { 
    380391                                        $delete_ays = ( !$this->is_trash && !MEDIA_TRASH ) ? " onclick='return showNotice.warn();'" : ''; 
    381                                         $actions['delete'] = "<a class='submitdelete'$delete_ays href='" . wp_nonce_url( "post.php?action=delete&amp;post=$post->ID", 'delete-attachment_' . $post->ID ) . "'>" . __( 'Delete Permanently' ) . "</a>"; 
     392                                        $nonce_url = wp_nonce_url( "post.php?action=delete&amp;post=$post->ID", 'delete-attachment_' . $post->ID ); 
     393                                        $submit_url = esc_url( admin_url( add_query_arg( '_wp_http_referer', $referer, $nonce_url ) ) ); 
     394                                        $actions['delete'] = "<a class='submitdelete'$delete_ays href='$submit_url'>" . __( 'Delete Permanently' ) . "</a>"; 
    382395                                } 
    383396                        } 
    384397                        if ( !$this->is_trash ) {