X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/8ab4a4532479e8db471032b51042ec8c4716d091..refs/tags/wordpress-4.7-scripts:/wp-admin/includes/media.php diff --git a/wp-admin/includes/media.php b/wp-admin/includes/media.php index 75811962..ede25b3d 100644 --- a/wp-admin/includes/media.php +++ b/wp-admin/includes/media.php @@ -22,7 +22,7 @@ function media_upload_tabs() { ); /** - * Filter the available tabs in the legacy (pre-3.5.0) media popup. + * Filters the available tabs in the legacy (pre-3.5.0) media popup. * * @since 2.5.0 * @@ -36,6 +36,8 @@ function media_upload_tabs() { * * @since 2.5.0 * + * @global wpdb $wpdb WordPress database abstraction object. + * * @param array $tabs * @return array $tabs with gallery if post has image attachment */ @@ -61,12 +63,13 @@ function update_gallery_tab($tabs) { return $tabs; } -add_filter('media_upload_tabs', 'update_gallery_tab'); /** - * {@internal Missing Short Description}} + * Outputs the legacy media upload tabs UI. * * @since 2.5.0 + * + * @global string $redir_tab */ function the_media_upload_tabs() { global $redir_tab; @@ -99,42 +102,52 @@ function the_media_upload_tabs() { } /** - * {@internal Missing Short Description}} + * Retrieves the image HTML to send to the editor. * * @since 2.5.0 * - * @param integer $id image attachment id - * @param string $caption image caption - * @param string $alt image alt attribute - * @param string $title image title attribute - * @param string $align image css alignment property - * @param string $url image src url - * @param string|bool $rel image rel attribute - * @param string $size image size (thumbnail, medium, large, full or added with add_image_size() ) - * @return string the html to insert into editor + * @param int $id Image attachment id. + * @param string $caption Image caption. + * @param string $title Image title attribute. + * @param string $align Image CSS alignment property. + * @param string $url Optional. Image src URL. Default empty. + * @param bool|string $rel Optional. Value for rel attribute or whether to add a default value. Default false. + * @param string|array $size Optional. Image size. Accepts any valid image size, or an array of width + * and height values in pixels (in that order). Default 'medium'. + * @param string $alt Optional. Image alt attribute. Default empty. + * @return string The HTML output to insert into the editor. */ -function get_image_send_to_editor($id, $caption, $title, $align, $url='', $rel = false, $size='medium', $alt = '') { +function get_image_send_to_editor( $id, $caption, $title, $align, $url = '', $rel = false, $size = 'medium', $alt = '' ) { - $html = get_image_tag($id, $alt, '', $align, $size); + $html = get_image_tag( $id, $alt, '', $align, $size ); - $rel = $rel ? ' rel="attachment wp-att-' . esc_attr($id).'"' : ''; + if ( $rel ) { + if ( is_string( $rel ) ) { + $rel = ' rel="' . esc_attr( $rel ) . '"'; + } else { + $rel = ' rel="attachment wp-att-' . intval( $id ) . '"'; + } + } else { + $rel = ''; + } if ( $url ) - $html = '$html"; + $html = '' . $html . ''; /** - * Filter the image HTML markup to send to the editor. + * Filters the image HTML markup to send to the editor when inserting an image. * * @since 2.5.0 * - * @param string $html The image HTML markup to send. - * @param int $id The attachment id. - * @param string $caption The image caption. - * @param string $title The image title. - * @param string $align The image alignment. - * @param string $url The image source URL. - * @param string $size The image size. - * @param string $alt The image alternative, or alt, text. + * @param string $html The image HTML markup to send. + * @param int $id The attachment id. + * @param string $caption The image caption. + * @param string $title The image title. + * @param string $align The image alignment. + * @param string $url The image source URL. + * @param string|array $size Size of image. Image size or array of width and height values + * (in that order). Default 'medium'. + * @param string $alt The image alternative, or alt, text. */ $html = apply_filters( 'image_send_to_editor', $html, $id, $caption, $title, $align, $url, $size, $alt ); @@ -149,23 +162,23 @@ function get_image_send_to_editor($id, $caption, $title, $align, $url='', $rel = * @param string $html * @param integer $id * @param string $caption image caption - * @param string $alt image alt attribute * @param string $title image title attribute * @param string $align image css alignment property * @param string $url image src url * @param string $size image size (thumbnail, medium, large, full or added with add_image_size() ) + * @param string $alt image alt attribute * @return string */ function image_add_caption( $html, $id, $caption, $title, $align, $url, $size, $alt = '' ) { /** - * Filter the caption text. + * Filters the caption text. * * Note: If the caption text is empty, the caption shortcode will not be appended * to the image HTML when inserted into the editor. * * Passing an empty value also prevents the {@see 'image_add_caption_shortcode'} - * filter from being evaluated at the end of {@see image_add_caption()}. + * Filters from being evaluated at the end of image_add_caption(). * * @since 4.1.0 * @@ -175,7 +188,7 @@ function image_add_caption( $html, $id, $caption, $title, $align, $url, $size, $ $caption = apply_filters( 'image_add_caption_text', $caption, $id ); /** - * Filter whether to disable captions. + * Filters whether to disable captions. * * Prevents image captions from being appended to image HTML when inserted into the editor. * @@ -207,7 +220,7 @@ function image_add_caption( $html, $id, $caption, $title, $align, $url, $size, $ $shcode = '[caption id="' . $id . '" align="align' . $align . '" width="' . $width . '"]' . $html . ' ' . $caption . '[/caption]'; /** - * Filter the image HTML markup including the caption shortcode. + * Filters the image HTML markup including the caption shortcode. * * @since 2.6.0 * @@ -216,7 +229,6 @@ function image_add_caption( $html, $id, $caption, $title, $align, $url, $size, $ */ return apply_filters( 'image_add_caption_shortcode', $shcode, $html ); } -add_filter( 'image_send_to_editor', 'image_add_caption', 20, 8 ); /** * Private preg_replace callback used in image_add_caption() @@ -240,7 +252,7 @@ function media_send_to_editor($html) { ?> '); * * @since 2.5.0 * - * @param string $file_id Index of the {@link $_FILES} array that the file was sent. Required. + * @param string $file_id Index of the `$_FILES` array that the file was sent. Required. * @param int $post_id The post ID of a post to attach the media item to. Required, but can * be set to 0, creating a media item that has no relationship to a post. * @param array $post_data Overwrite some of the attachment. Optional. - * @param array $overrides Override the {@link wp_handle_upload()} behavior. Optional. + * @param array $overrides Override the wp_handle_upload() behavior. Optional. * @return int|WP_Error ID of the attachment or a WP_Error object on failure. */ function media_handle_upload($file_id, $post_id, $post_data = array(), $overrides = array( 'test_form' => false )) { @@ -266,19 +278,19 @@ function media_handle_upload($file_id, $post_id, $post_data = array(), $override $time = $post->post_date; } - $name = $_FILES[$file_id]['name']; $file = wp_handle_upload($_FILES[$file_id], $overrides, $time); if ( isset($file['error']) ) return new WP_Error( 'upload_error', $file['error'] ); - $name_parts = pathinfo($name); - $name = trim( substr( $name, 0, -(1 + strlen($name_parts['extension'])) ) ); + $name = $_FILES[$file_id]['name']; + $ext = pathinfo( $name, PATHINFO_EXTENSION ); + $name = wp_basename( $name, ".$ext" ); $url = $file['url']; $type = $file['type']; $file = $file['file']; - $title = $name; + $title = sanitize_text_field( $name ); $content = ''; $excerpt = ''; @@ -301,6 +313,7 @@ function media_handle_upload($file_id, $post_id, $post_data = array(), $override /* translators: 1: audio track title, 2: artist name */ $content .= sprintf( __( '"%1$s" by %2$s.' ), $title, $meta['artist'] ); } else { + /* translators: 1: audio track title */ $content .= sprintf( __( '"%s".' ), $title ); } @@ -319,19 +332,26 @@ function media_handle_upload($file_id, $post_id, $post_data = array(), $override } - if ( ! empty( $meta['year'] ) ) + if ( ! empty( $meta['year'] ) ) { + /* translators: Audio file track information. 1: Year of audio track release */ $content .= ' ' . sprintf( __( 'Released: %d.' ), $meta['year'] ); + } if ( ! empty( $meta['track_number'] ) ) { $track_number = explode( '/', $meta['track_number'] ); - if ( isset( $track_number[1] ) ) + if ( isset( $track_number[1] ) ) { + /* translators: Audio file track information. 1: Audio track number, 2: Total audio tracks */ $content .= ' ' . sprintf( __( 'Track %1$s of %2$s.' ), number_format_i18n( $track_number[0] ), number_format_i18n( $track_number[1] ) ); - else + } else { + /* translators: Audio file track information. 1: Audio track number */ $content .= ' ' . sprintf( __( 'Track %1$s.' ), number_format_i18n( $track_number[0] ) ); + } } - if ( ! empty( $meta['genre'] ) ) + if ( ! empty( $meta['genre'] ) ) { + /* translators: Audio file genre information. 1: Audio genre name */ $content .= ' ' . sprintf( __( 'Genre: %s.' ), $meta['genre'] ); + } // Use image exif/iptc data for title and caption defaults if possible. } elseif ( 0 === strpos( $type, 'image/' ) && $image_meta = @wp_read_image_metadata( $file ) ) { @@ -355,8 +375,7 @@ function media_handle_upload($file_id, $post_id, $post_data = array(), $override ), $post_data ); // This should never be set as it would then overwrite an existing attachment. - if ( isset( $attachment['ID'] ) ) - unset( $attachment['ID'] ); + unset( $attachment['ID'] ); // Save the data $id = wp_insert_attachment($attachment, $file, $post_id); @@ -369,17 +388,17 @@ function media_handle_upload($file_id, $post_id, $post_data = array(), $override } /** - * This handles a sideloaded file in the same way as an uploaded file is handled by {@link media_handle_upload()} + * Handles a side-loaded file in the same way as an uploaded file is handled by media_handle_upload(). * * @since 2.6.0 * - * @param array $file_array Array similar to a {@link $_FILES} upload array - * @param int $post_id The post ID the media is associated with - * @param string $desc Description of the sideloaded file - * @param array $post_data allows you to overwrite some of the attachment - * @return int|object The ID of the attachment or a WP_Error on failure + * @param array $file_array Array similar to a `$_FILES` upload array. + * @param int $post_id The post ID the media is associated with. + * @param string $desc Optional. Description of the side-loaded file. Default null. + * @param array $post_data Optional. Post data to override. Default empty array. + * @return int|object The ID of the attachment or a WP_Error on failure. */ -function media_handle_sideload($file_array, $post_id, $desc = null, $post_data = array()) { +function media_handle_sideload( $file_array, $post_id, $desc = null, $post_data = array() ) { $overrides = array('test_form'=>false); $time = current_time( 'mysql' ); @@ -419,8 +438,7 @@ function media_handle_sideload($file_array, $post_id, $desc = null, $post_data = ), $post_data ); // This should never be set as it would then overwrite an existing attachment. - if ( isset( $attachment['ID'] ) ) - unset( $attachment['ID'] ); + unset( $attachment['ID'] ); // Save the attachment metadata $id = wp_insert_attachment($attachment, $file, $post_id); @@ -435,6 +453,8 @@ function media_handle_sideload($file_array, $post_id, $desc = null, $post_data = * * @since 2.5.0 * + * @global int $body_id + * * @param string|callable $content_func */ function wp_iframe($content_func /* ... */) { @@ -447,7 +467,7 @@ wp_enqueue_style( 'colors' ); // Check callback name for 'media' if ( ( is_array( $content_func ) && ! empty( $content_func[1] ) && 0 === strpos( (string) $content_func[1], 'media' ) ) || ( ! is_array( $content_func ) && 0 === strpos( $content_func, 'media' ) ) ) - wp_enqueue_style( 'media' ); + wp_enqueue_style( 'deprecated-media' ); wp_enqueue_style( 'ie' ); ?> \n"; + + echo ''; if ( empty( $_GET['chromeless'] ) ) { echo '
- 'save-all', 'style' => 'display: none;' ) ); ?> + 'save-all', 'style' => 'display: none;' ) ); ?> @@ -2268,10 +2339,17 @@ jQuery(function($){ } /** - * {@internal Missing Short Description}} + * Outputs the legacy media upload form for the media library. * * @since 2.5.0 * + * @global wpdb $wpdb + * @global WP_Query $wp_query + * @global WP_Locale $wp_locale + * @global string $type + * @global string $tab + * @global array $post_mime_types + * * @param array $errors */ function media_upload_library_form($errors) { @@ -2314,7 +2392,7 @@ function media_upload_library_form($errors) {
- +
- +
@@ -2484,21 +2562,21 @@ function wp_media_insert_url_form( $default_view = 'image' ) { return '+
' . sprintf( __( 'Required fields are marked %s' ), '*' ) . '
- - * + + | -+ | |
---|---|---|
- - * + | -+ | |
' . __('Link text, e.g. “Ransom Demands (PDF)”') . ' | ||
- ' . get_submit_button( __( 'Insert into Post' ), 'button', 'insertonlybutton', false ) . ' + ' . get_submit_button( __( 'Insert into Post' ), '', 'insertonlybutton', false ) . ' |