Make WordPress Core


Ignore:
Timestamp:
11/30/2017 11:09:33 PM (7 years ago)
Author:
pento
Message:

Code is Poetry.
WordPress' code just... wasn't.
This is now dealt with.

Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS.
Fixes #41057.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/media.php

    r39542 r42343  
    1010require_once( dirname( __FILE__ ) . '/admin.php' );
    1111
    12 $parent_file = 'upload.php';
     12$parent_file  = 'upload.php';
    1313$submenu_file = 'upload.php';
    1414
    15 wp_reset_vars(array('action'));
     15wp_reset_vars( array( 'action' ) );
    1616
    1717switch ( $action ) {
    18 case 'editattachment' :
    19     $attachment_id = (int) $_POST['attachment_id'];
    20     check_admin_referer('media-form');
     18    case 'editattachment':
     19        $attachment_id = (int) $_POST['attachment_id'];
     20        check_admin_referer( 'media-form' );
    2121
    22     if ( !current_user_can('edit_post', $attachment_id) )
    23         wp_die ( __('Sorry, you are not allowed to edit this attachment.') );
     22        if ( ! current_user_can( 'edit_post', $attachment_id ) ) {
     23            wp_die( __( 'Sorry, you are not allowed to edit this attachment.' ) );
     24        }
    2425
    25     $errors = media_upload_form_handler();
     26        $errors = media_upload_form_handler();
    2627
    27     if ( empty($errors) ) {
    28         $location = 'media.php';
    29         if ( $referer = wp_get_original_referer() ) {
    30             if ( false !== strpos($referer, 'upload.php') || ( url_to_postid($referer) == $attachment_id )  )
    31                 $location = $referer;
     28        if ( empty( $errors ) ) {
     29            $location = 'media.php';
     30            if ( $referer = wp_get_original_referer() ) {
     31                if ( false !== strpos( $referer, 'upload.php' ) || ( url_to_postid( $referer ) == $attachment_id ) ) {
     32                    $location = $referer;
     33                }
     34            }
     35            if ( false !== strpos( $location, 'upload.php' ) ) {
     36                $location = remove_query_arg( 'message', $location );
     37                $location = add_query_arg( 'posted', $attachment_id, $location );
     38            } elseif ( false !== strpos( $location, 'media.php' ) ) {
     39                $location = add_query_arg( 'message', 'updated', $location );
     40            }
     41            wp_redirect( $location );
     42            exit;
    3243        }
    33         if ( false !== strpos($location, 'upload.php') ) {
    34             $location = remove_query_arg('message', $location);
    35             $location = add_query_arg('posted', $attachment_id, $location);
    36         } elseif ( false !== strpos($location, 'media.php') ) {
    37             $location = add_query_arg('message', 'updated', $location);
     44
     45        // No break.
     46    case 'edit':
     47        $title = __( 'Edit Media' );
     48
     49        if ( empty( $errors ) ) {
     50            $errors = null;
    3851        }
    39         wp_redirect($location);
    40         exit;
    41     }
    4252
    43     // No break.
    44 case 'edit' :
    45     $title = __('Edit Media');
     53        if ( empty( $_GET['attachment_id'] ) ) {
     54            wp_redirect( admin_url( 'upload.php' ) );
     55            exit();
     56        }
     57        $att_id = (int) $_GET['attachment_id'];
    4658
    47     if ( empty($errors) )
    48         $errors = null;
     59        if ( ! current_user_can( 'edit_post', $att_id ) ) {
     60            wp_die( __( 'Sorry, you are not allowed to edit this attachment.' ) );
     61        }
    4962
    50     if ( empty( $_GET['attachment_id'] ) ) {
    51         wp_redirect( admin_url('upload.php') );
    52         exit();
    53     }
    54     $att_id = (int) $_GET['attachment_id'];
     63        $att = get_post( $att_id );
    5564
    56     if ( !current_user_can('edit_post', $att_id) )
    57         wp_die ( __('Sorry, you are not allowed to edit this attachment.') );
     65        if ( empty( $att->ID ) ) {
     66            wp_die( __( 'You attempted to edit an attachment that doesn’t exist. Perhaps it was deleted?' ) );
     67        }
     68        if ( 'attachment' !== $att->post_type ) {
     69            wp_die( __( 'You attempted to edit an item that isn’t an attachment. Please go back and try again.' ) );
     70        }
     71        if ( $att->post_status == 'trash' ) {
     72            wp_die( __( 'You can’t edit this attachment because it is in the Trash. Please move it out of the Trash and try again.' ) );
     73        }
    5874
    59     $att = get_post($att_id);
     75        add_filter( 'attachment_fields_to_edit', 'media_single_attachment_fields_to_edit', 10, 2 );
    6076
    61     if ( empty($att->ID) ) wp_die( __('You attempted to edit an attachment that doesn’t exist. Perhaps it was deleted?') );
    62     if ( 'attachment' !== $att->post_type ) wp_die( __('You attempted to edit an item that isn’t an attachment. Please go back and try again.') );
    63     if ( $att->post_status == 'trash' ) wp_die( __('You can’t edit this attachment because it is in the Trash. Please move it out of the Trash and try again.') );
     77        wp_enqueue_script( 'wp-ajax-response' );
     78        wp_enqueue_script( 'image-edit' );
     79        wp_enqueue_style( 'imgareaselect' );
    6480
    65     add_filter('attachment_fields_to_edit', 'media_single_attachment_fields_to_edit', 10, 2);
     81        get_current_screen()->add_help_tab(
     82            array(
     83                'id'      => 'overview',
     84                'title'   => __( 'Overview' ),
     85                'content' =>
     86                      '<p>' . __( 'This screen allows you to edit five fields for metadata in a file within the media library.' ) . '</p>' .
     87                      '<p>' . __( 'For images only, you can click on Edit Image under the thumbnail to expand out an inline image editor with icons for cropping, rotating, or flipping the image as well as for undoing and redoing. The boxes on the right give you more options for scaling the image, for cropping it, and for cropping the thumbnail in a different way than you crop the original image. You can click on Help in those boxes to get more information.' ) . '</p>' .
     88                      '<p>' . __( 'Note that you crop the image by clicking on it (the Crop icon is already selected) and dragging the cropping frame to select the desired part. Then click Save to retain the cropping.' ) . '</p>' .
     89                      '<p>' . __( 'Remember to click Update Media to save metadata entered or changed.' ) . '</p>',
     90            )
     91        );
    6692
    67     wp_enqueue_script( 'wp-ajax-response' );
    68     wp_enqueue_script('image-edit');
    69     wp_enqueue_style('imgareaselect');
     93        get_current_screen()->set_help_sidebar(
     94            '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
     95            '<p>' . __( '<a href="https://codex.wordpress.org/Media_Add_New_Screen#Edit_Media">Documentation on Edit Media</a>' ) . '</p>' .
     96            '<p>' . __( '<a href="https://wordpress.org/support/">Support Forums</a>' ) . '</p>'
     97        );
    7098
    71     get_current_screen()->add_help_tab( array(
    72         'id'      => 'overview',
    73         'title'   => __('Overview'),
    74         'content' =>
    75             '<p>' . __('This screen allows you to edit five fields for metadata in a file within the media library.') . '</p>' .
    76             '<p>' . __('For images only, you can click on Edit Image under the thumbnail to expand out an inline image editor with icons for cropping, rotating, or flipping the image as well as for undoing and redoing. The boxes on the right give you more options for scaling the image, for cropping it, and for cropping the thumbnail in a different way than you crop the original image. You can click on Help in those boxes to get more information.') . '</p>' .
    77             '<p>' . __('Note that you crop the image by clicking on it (the Crop icon is already selected) and dragging the cropping frame to select the desired part. Then click Save to retain the cropping.') . '</p>' .
    78             '<p>' . __('Remember to click Update Media to save metadata entered or changed.') . '</p>'
    79     ) );
     99        require( ABSPATH . 'wp-admin/admin-header.php' );
    80100
    81     get_current_screen()->set_help_sidebar(
    82     '<p><strong>' . __('For more information:') . '</strong></p>' .
    83     '<p>' . __('<a href="https://codex.wordpress.org/Media_Add_New_Screen#Edit_Media">Documentation on Edit Media</a>') . '</p>' .
    84     '<p>' . __('<a href="https://wordpress.org/support/">Support Forums</a>') . '</p>'
    85     );
     101        $parent_file = 'upload.php';
     102        $message     = '';
     103        $class       = '';
     104        if ( isset( $_GET['message'] ) ) {
     105            switch ( $_GET['message'] ) {
     106                case 'updated':
     107                    $message = __( 'Media file updated.' );
     108                    $class   = 'updated';
     109                    break;
     110            }
     111        }
     112        if ( $message ) {
     113            echo "<div id='message' class='$class'><p>$message</p></div>\n";
     114        }
    86115
    87     require( ABSPATH . 'wp-admin/admin-header.php' );
     116    ?>
    88117
    89     $parent_file = 'upload.php';
    90     $message = '';
    91     $class = '';
    92     if ( isset($_GET['message']) ) {
    93         switch ( $_GET['message'] ) {
    94             case 'updated' :
    95                 $message = __('Media file updated.');
    96                 $class = 'updated';
    97                 break;
    98         }
    99     }
    100     if ( $message )
    101         echo "<div id='message' class='$class'><p>$message</p></div>\n";
    102 
     118    <div class="wrap">
     119    <h1 class="wp-heading-inline">
     120<?php
     121echo esc_html( $title );
    103122?>
    104 
    105 <div class="wrap">
    106 <h1 class="wp-heading-inline"><?php
    107 echo esc_html( $title );
    108 ?></h1>
     123</h1>
    109124
    110125<?php
    111 if ( current_user_can( 'upload_files' ) ) { ?>
    112     <a href="media-new.php" class="page-title-action"><?php echo esc_html_x('Add New', 'file'); ?></a>
     126if ( current_user_can( 'upload_files' ) ) {
     127?>
     128    <a href="media-new.php" class="page-title-action"><?php echo esc_html_x( 'Add New', 'file' ); ?></a>
    113129<?php } ?>
    114130
    115 <hr class="wp-header-end">
     131    <hr class="wp-header-end">
    116132
    117 <form method="post" class="media-upload-form" id="media-single-form">
    118 <p class="submit" style="padding-bottom: 0;">
    119 <?php submit_button( __( 'Update Media' ), 'primary', 'save', false ); ?>
    120 </p>
     133    <form method="post" class="media-upload-form" id="media-single-form">
     134    <p class="submit" style="padding-bottom: 0;">
     135    <?php submit_button( __( 'Update Media' ), 'primary', 'save', false ); ?>
     136    </p>
    121137
    122 <div class="media-single">
    123 <div id="media-item-<?php echo $att_id; ?>" class="media-item">
    124 <?php echo get_media_item( $att_id, array( 'toggle' => false, 'send' => false, 'delete' => false, 'show_title' => false, 'errors' => !empty($errors[$att_id]) ? $errors[$att_id] : null ) ); ?>
    125 </div>
    126 </div>
     138    <div class="media-single">
     139    <div id="media-item-<?php echo $att_id; ?>" class="media-item">
     140    <?php
     141    echo get_media_item(
     142        $att_id, array(
     143            'toggle'     => false,
     144            'send'       => false,
     145            'delete'     => false,
     146            'show_title' => false,
     147            'errors'     => ! empty( $errors[ $att_id ] ) ? $errors[ $att_id ] : null,
     148        )
     149    );
     150?>
     151    </div>
     152    </div>
    127153
    128 <?php submit_button( __( 'Update Media' ), 'primary', 'save' ); ?>
    129 <input type="hidden" name="post_id" id="post_id" value="<?php echo isset($post_id) ? esc_attr($post_id) : ''; ?>" />
    130 <input type="hidden" name="attachment_id" id="attachment_id" value="<?php echo esc_attr($att_id); ?>" />
    131 <input type="hidden" name="action" value="editattachment" />
    132 <?php wp_original_referer_field(true, 'previous'); ?>
    133 <?php wp_nonce_field('media-form'); ?>
     154    <?php submit_button( __( 'Update Media' ), 'primary', 'save' ); ?>
     155    <input type="hidden" name="post_id" id="post_id" value="<?php echo isset( $post_id ) ? esc_attr( $post_id ) : ''; ?>" />
     156    <input type="hidden" name="attachment_id" id="attachment_id" value="<?php echo esc_attr( $att_id ); ?>" />
     157    <input type="hidden" name="action" value="editattachment" />
     158    <?php wp_original_referer_field( true, 'previous' ); ?>
     159    <?php wp_nonce_field( 'media-form' ); ?>
    134160
    135 </form>
     161    </form>
    136162
    137 </div>
     163    </div>
    138164
    139 <?php
     165    <?php
    140166
    141167    require( ABSPATH . 'wp-admin/admin-footer.php' );
    142168
    143     exit;
     169        exit;
    144170
    145 default:
    146     wp_redirect( admin_url('upload.php') );
    147     exit;
     171    default:
     172        wp_redirect( admin_url( 'upload.php' ) );
     173        exit;
    148174
    149175}
Note: See TracChangeset for help on using the changeset viewer.