WordPress.org

Make WordPress Core

Ticket #23926: 23926.7.diff

File 23926.7.diff, 3.7 KB (added by wonderboymusic, 15 months ago)
  • wp-admin/includes/media.php

    diff --git wp-admin/includes/media.php wp-admin/includes/media.php
    index 573c4db..abfd36c 100644
    function media_handle_upload($file_id, $post_id, $post_data = array(), $override 
    224224        $title = $name; 
    225225        $content = ''; 
    226226 
     227        if ( preg_match( '#^audio#', $type ) ) { 
     228                $meta = wp_read_audio_metadata( $file ); 
     229                if ( ! empty( $meta['title'] ) ) 
     230                        $title = $meta['title']; 
     231 
     232                $content = ''; 
     233 
     234                if ( ! empty( $title ) ) 
     235                        $content .= sprintf( '"%s"', $title ); 
     236 
     237                if ( ! empty( $meta['album'] ) ) 
     238                        $content .= ' ' . sprintf( __( 'from %s' ), $meta['album'] ); 
     239 
     240                if ( ! empty( $meta['artist'] ) ) 
     241                        $content .= ' ' . sprintf( __( 'by %s' ), $meta['artist'] ); 
     242 
     243                if ( ! empty( $content ) ) 
     244                        $content .= '. '; 
     245 
     246                if ( ! empty( $meta['year'] ) ) 
     247                        $content .= sprintf( __( 'Released: %d.' ), $meta['year'] ) . ' '; 
     248 
     249                if ( ! empty( $meta['track_number'] ) ) { 
     250                        list( $track, $length ) = explode( '/', $meta['track_number'] ); 
     251                        $content .= sprintf( __( 'Track %d of %d.' ), $track, $length ) . ' '; 
     252                } 
     253 
     254                if ( ! empty( $meta['genre'] ) ) 
     255                        $content .= sprintf( __( 'Genre: %s.' ), $meta['genre'] ) . ' '; 
     256 
    227257        // use image exif/iptc data for title and caption defaults if possible 
    228         if ( $image_meta = @wp_read_image_metadata($file) ) { 
     258        } elseif ( $image_meta = @wp_read_image_metadata( $file ) ) { 
    229259                if ( trim( $image_meta['title'] ) && ! is_numeric( sanitize_title( $image_meta['title'] ) ) ) 
    230260                        $title = $image_meta['title']; 
    231261                if ( trim( $image_meta['caption'] ) ) 
    function edit_form_image_editor() { 
    23132343        elseif ( $attachment_id && 0 === strpos( $post->post_mime_type, 'video/' ) ): 
    23142344 
    23152345                $meta = wp_get_attachment_metadata( $attachment_id ); 
     2346                $w = ! empty( $meta['width'] ) ? min( $meta['width'], 600 ) : 0; 
     2347                $h = 0; 
     2348                if ( ! empty( $meta['height'] ) ) 
     2349                        $h = $meta['height']; 
     2350                if ( $w < $meta['width'] ) 
     2351                        $h = ceil( $w * 0.6 ); 
     2352 
    23162353                $shortcode = sprintf( '[video src="%s"%s%s]', 
    23172354                        $att_url, 
    2318                         empty( $meta['width'] ) ? '' : sprintf( ' width="%d"', $meta['width'] ), 
    2319                         empty( $meta['height'] ) ? '' : sprintf( ' height="%d"', $meta['height'] ) 
     2355                        empty( $meta['width'] ) ? '' : sprintf( ' width="%d"', $w ), 
     2356                        empty( $meta['height'] ) ? '' : sprintf( ' height="%d"', $h ) 
    23202357                ); 
    23212358                echo do_shortcode( $shortcode ); 
    23222359 
    function attachment_submitbox_metadata() { 
    23902427                ?></strong> 
    23912428        </div> 
    23922429 
    2393 <?php if ( $media_dims ) : ?> 
     2430<?php 
     2431        if ( preg_match( '#^audio|video#', $post->post_mime_type ) ): 
     2432 
     2433                $fields = array( 
     2434                        'mime_type' => __( 'Mime-type:' ), 
     2435                        'year' => __( 'Year:' ), 
     2436                        'genre' => __( 'Genre:' ), 
     2437                        'length_formatted' => __( 'Length:' ), 
     2438                ); 
     2439 
     2440                foreach ( $fields as $key => $label ): 
     2441                        if ( ! empty( $meta[$key] ) ) : ?> 
     2442                <div class="misc-pub-section"> 
     2443                        <?php echo $label ?> <strong><?php echo esc_html( $meta[$key] ); ?></strong> 
     2444                </div> 
     2445        <?php 
     2446                        endif; 
     2447                endforeach; 
     2448 
     2449                if ( ! empty( $meta['bitrate'] ) ) : ?> 
     2450                <div class="misc-pub-section"> 
     2451                        <?php _e( 'Bitrate:' ); ?> <strong><?php 
     2452                                echo $meta['bitrate'] / 1000, 'kb/s'; 
     2453 
     2454                                if ( ! empty( $meta['bitrate_mode'] ) ) 
     2455                                        echo ' ', strtoupper( $meta['bitrate_mode'] ); 
     2456 
     2457                        ?></strong> 
     2458                </div> 
     2459        <?php 
     2460                endif; 
     2461 
     2462                $audio_fields = array( 
     2463                        'dataformat' => __( 'Audio Format:' ), 
     2464                        'codec' => __( 'Audio Codec:' ) 
     2465                ); 
     2466 
     2467                foreach ( $audio_fields as $key => $label ): 
     2468                        if ( ! empty( $meta['audio'][$key] ) ) : ?> 
     2469                <div class="misc-pub-section"> 
     2470                        <?php echo $label; ?> <strong><?php echo esc_html( $meta['audio'][$key] ); ?></strong> 
     2471                </div> 
     2472        <?php 
     2473                        endif; 
     2474                endforeach; 
     2475 
     2476        endif; 
     2477 
     2478        if ( $media_dims ) : ?> 
    23942479        <div class="misc-pub-section"> 
    23952480                <?php _e( 'Dimensions:' ); ?> <strong><?php echo $media_dims; ?></strong> 
    23962481        </div>