Commit Graph

924 Commits

Author SHA1 Message Date
Joe McGill
37318fe73f Media: Sanity check array value in wp_prepare_attachment_for_js().
This adds a sanity check to the return value of the `image_downsize` filter
in `wp_prepare_attachment_for_js()` to avoid undefined offest notices.

Props justinbusa for initial patch.
Fixes 34437.
Built from https://develop.svn.wordpress.org/trunk@39107


git-svn-id: http://core.svn.wordpress.org/trunk@39049 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-03 02:23:29 +00:00
Mike Schroder
a8e304ec8e Media: Add support for rendering PDF thumbnails.
When support for PDFs is available, on upload,
render 'Thumbnail', 'Medium', 'Large', and 'Full' sizes of
the first page, and save them in attachment meta.

Use these renders within Add Media, Media Gallery and List views,
Attachment Details, Post/Attachment Edit screens, and Attachment pages.

Support available by default via Imagick -> ImageMagick -> Ghostscript,
but can be provided by any `WP_Image_Editor` that supports PDFs.

Props adamsilverstein, azaozz, celloexpressions, desrosj, dglingren, ericlewis, ipstenu, joemcgill, joyously, markoheijnen, melchoyce, mikeschroder, tomauger.
Fixes #31050.
Built from https://develop.svn.wordpress.org/trunk@38949


git-svn-id: http://core.svn.wordpress.org/trunk@38892 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-26 07:28:32 +00:00
Joe McGill
8ed022b568 Media: Remove alt fallbacks to improve accessibility.
This removes the fallbacks in `wp_get_attachment_image()` and in
`wp.media.string.props` which attempt to generate an `alt` value
from the image caption or title if an `alt` attribute isn't explicitly
set.

This allows for image HTML to be generated that contains an empty `alt`
value, i.e., `alt=""` which is much preferable for screen readers than
reading redundant content in the case of a caption, or when reading the
image title, which is often generated from the filename and not helpful
as `alt` text.

Props odie2, joedolson, rianrietveld, afercia, iamjolly, joemcgill.
Fixes #34635.
Built from https://develop.svn.wordpress.org/trunk@38812


git-svn-id: http://core.svn.wordpress.org/trunk@38755 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-19 03:06:28 +00:00
Andrea Fercia
da4da31af1 Administration: Better consistency for the Media, Add Plugins, and Add Themes toolbars.
Fixes the Add Themes toolbar padding. Standardizes the placeholders to no title
case and three trailing dots. Expands the Media search placeholder in
"Search media items..." for consistency with the Plugins and Themes toolbars.

Props mikeviele, jamesacero, mattking5000, koenschipper, dungengronovius.

Fixes #38010.

Built from https://develop.svn.wordpress.org/trunk@38795


git-svn-id: http://core.svn.wordpress.org/trunk@38738 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-14 21:33:28 +00:00
Sergey Biryukov
893f9487d4 Media: Remove an extra space in style attribute in wp_video_shortcode() after [30082].
Props danielpietrasik.
Fixes #38040.
Built from https://develop.svn.wordpress.org/trunk@38597


git-svn-id: http://core.svn.wordpress.org/trunk@38540 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-09-13 13:45:31 +00:00
Scott Taylor
a3ffebce30 Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389.
See #36335.

Built from https://develop.svn.wordpress.org/trunk@38470


git-svn-id: http://core.svn.wordpress.org/trunk@38411 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-31 16:31:29 +00:00
Scott Taylor
9383bf8f74 General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight.
See #37699.

Built from https://develop.svn.wordpress.org/trunk@38459


git-svn-id: http://core.svn.wordpress.org/trunk@38400 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-31 05:49:37 +00:00
Boone Gorges
d793020f1e Remove unnecessary uniqueness check in get_attachment_taxonomies().
Running the taxonomy array through `array_unique()` is unnecessary
when the function returns objects, because the associative keys already
ensure uniqueness.

This also fixes a bug when running `get_attachment_taxonomies()` in
HHVM, which doesn't like casting objects to strings for the purposes
of `array_unique()`.

Props swissspidy.
See #37368.
Built from https://develop.svn.wordpress.org/trunk@38437


git-svn-id: http://core.svn.wordpress.org/trunk@38378 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-30 03:07:34 +00:00
Scott Taylor
390ceba6c7 Bootstrap: after r38409 and r38410, revert r38402 which reverted r38399.
This fixes the paths in `wp-vendor/` that were including `src`. I want to drop this in so we can find out what else will break.

See #36335.

Built from https://develop.svn.wordpress.org/trunk@38411


git-svn-id: http://core.svn.wordpress.org/trunk@38352 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 22:32:37 +00:00
Dion Hulse
0e31a46161 Bootstrap: Revert [38399] as it's broken /build/ and subsequently core.svn.wordpress.org.
The generated classmaps reference `/src/` files and operates in the assumption that the base directory is one level above `wp-settings.php`, which it isn't after our build processes are run.

See #36335

Built from https://develop.svn.wordpress.org/trunk@38402


git-svn-id: http://core.svn.wordpress.org/trunk@38343 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 14:37:32 +00:00
Scott Taylor
6a529648cf Bootstrap: Autoload classes using a Composer-generated PHP 5.2-compatible Autoloader.
* `wp-admin` and `wp-includes` are scanned for classes to autoload
* Several 3rd-party and Ryan McCue-shaped libraries are excluded when the classmap is generated, see `composer.json`: `autoload.exclude-from-classmap`
* `wp-vendor/autoload_52.php` is included at the top of `wp-settings.php` - no changes need to be made to unit tests to include the autoloader
* An avalanche of `require()` and `require_once()` calls that loaded class files have been removed from the codebase.

The following files have been added to `svn:ignore` - they are not 5.2-compatible and fail during pre-commit:
* src/wp-vendor/autoload.php
* src/wp-vendor/composer/autoload_real.php
* src/wp-vendor/composer/autoload_static.php
* src/wp-vendor/composer/ClassLoader.php

We favor these files instead:
* src/wp-vendor/autoload_52.php
* src/wp-vendor/composer/autoload_real_52.php
* src/wp-vendor/composer/ClassLoader52.php

When new PHP classes are added to the codebase, simply run `composer install` or `composer update` from the project root to update the autoloader.

The future is now.

See #36335.

Built from https://develop.svn.wordpress.org/trunk@38399


git-svn-id: http://core.svn.wordpress.org/trunk@38340 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-27 09:15:29 +00:00
Scott Taylor
a017516291 Media: remove unnecessary variable assignment in gallery_shortcode().
See #37771.

Built from https://develop.svn.wordpress.org/trunk@38309


git-svn-id: http://core.svn.wordpress.org/trunk@38250 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-22 20:53:29 +00:00
Scott Taylor
d31456b615 Media: add a function, wp_get_additional_image_sizes(), that wraps the retrieval of the global $_wp_additional_image_sizes. Removes 6 global imports.
See #37699.

Built from https://develop.svn.wordpress.org/trunk@38303


git-svn-id: http://core.svn.wordpress.org/trunk@38244 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-22 04:37:28 +00:00
Scott Taylor
b8bfcb0d64 Media: use wp_get_attachment_metadata() instead of get_post_meta() where appropriate.
Adds unit test.

Props JorritSchippers.
Fixes #36246.

Built from https://develop.svn.wordpress.org/trunk@38296


git-svn-id: http://core.svn.wordpress.org/trunk@38237 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-21 06:15:30 +00:00
Boone Gorges
344c88d39f Allow attachment taxonomies to be fetched as objects.
By adding the `$output` parameter to `get_attachment_taxonomies()`, the
function signature matches that of `get_object_taxonomies()`. The change
also allows for more consistent behavior when passing `output=objects`
to `get_object_taxonomies()` for the 'attachment' object type, since
the `$output` parameter is now passed through the function stack.

Props codemovement.pk.
See #37368.
Built from https://develop.svn.wordpress.org/trunk@38292


git-svn-id: http://core.svn.wordpress.org/trunk@38233 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-20 17:35:31 +00:00
Joe McGill
28a132dfee Media: Prevent image_get_intermediate_size() from returning cropped images.
When `$size` is passed to `image_get_intermediate_size()` as an array of width
and height values and an exact image size matching those values isn't available,
the function loops through the available attachment sizes and returns the
smallest image larger than the requested dimensions with the same aspect ratio.

The aspect ratio check is skipped for the 'thumbnail' size to provide a fallback
for small sizes when no other image option is available. This resulted in a poor
selection when the size requested was smaller than the 'thumbnail' dimensions
but a larger size matching the requested ratio existed.

This refactors the internals of `image_get_intermediate_size()` to ensure the
'thumbnail' size is only returned as a fallback to small sizes once all other
options have been considered, and makes the control flow easier to follow.

This also introduces a new helper function, `wp_image_matches_ratio()` for
testing whether the aspect ratios of two sets of dimensions match. This function
is also now used in `wp_calculate_image_srcset()` during the selection process.

Props flixos, joemcgill.
Fixes #34384, #34980.
Built from https://develop.svn.wordpress.org/trunk@38086


git-svn-id: http://core.svn.wordpress.org/trunk@38027 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-18 02:14:29 +00:00
Joe McGill
2ecdbf36cb Media: URL encode spaces in srcset attributes.
In some cases, images in the media library may contain spaces in
their filenames. This results in an invalid `srcset` attribute,
causing broken images on the front end. This change fixes the issue
by replacing spaces in URLs with URL encoded '%20' characters before
returning the `srcset` string.

Props underdude, joemcgill.
Fixes #36549.
Built from https://develop.svn.wordpress.org/trunk@38052


git-svn-id: http://core.svn.wordpress.org/trunk@37993 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-13 15:24:55 +00:00
Dominik Schilling
5eae48b414 Boostrap: Move wp_convert_hr_to_bytes() to wp-includes/load.php.
`wp_convert_hr_to_bytes()` was previously defined in wp-includes/media.php because it's only used by `wp_max_upload_size()` in the same file.
Moving this function to load.php allows us to improve core's memory limit handling.

See #32075.
Built from https://develop.svn.wordpress.org/trunk@38012


git-svn-id: http://core.svn.wordpress.org/trunk@37953 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-08 11:27:27 +00:00
Joe McGill
7e5885b874 Media: Don't use 'full' as array key in wp_calculate_image_srcset().
In `wp_calculate_image_srcset()` we get an array of image sizes
associated with an attachment and then add the original image's
information to the array before processing the `srcset`. In doing
so, we set the original data to a `$image_sizes['full']` key, which
could stomp on any custom image sizes using `full` as a size name.

This avoid the issues by adding the original data without a named
key, which is never referenced anyway.

Props jaspermdegroot.
Fixes #36345.
Built from https://develop.svn.wordpress.org/trunk@37986


git-svn-id: http://core.svn.wordpress.org/trunk@37927 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-06 14:05:29 +00:00
Sergey Biryukov
e64b88cb34 Media: Avoid PHP notices when trying to show a parent post title of an orphaned post type.
Props littler.chicken.
See #37186.
Built from https://develop.svn.wordpress.org/trunk@37952


git-svn-id: http://core.svn.wordpress.org/trunk@37893 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-04 19:34:28 +00:00
Helen Hou-Sandí
20b329ba08 Media: Only show parent post titles when the user can read said post.
fixes #37186.

Built from https://develop.svn.wordpress.org/trunk@37941


git-svn-id: http://core.svn.wordpress.org/trunk@37882 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-01 15:07:36 +00:00
Dominik Schilling
4e403b2752 Media: Pass allowed file extensions to Plupload.
Plupload's `mime_types` filter (http://www.plupload.com/docs/Options#filters.mime_types) allows us to inform a user about an unsupported file before the file gets uploaded.

Props polevaultweb.
Fixes #14244.
Built from https://develop.svn.wordpress.org/trunk@37727


git-svn-id: http://core.svn.wordpress.org/trunk@37693 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-16 15:39:28 +00:00
Drew Jaynes
bef05b469b Docs: Standardize DocBlock summaries for hooks that serve to "print" something to use third-person singular verbs.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37560


git-svn-id: http://core.svn.wordpress.org/trunk@37528 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-25 16:05:27 +00:00
Ella Iseulde Van Dorpe
2934f338cf Media: unhide audio fallback
Introduced in [28182].
Fixes #36888.


Built from https://develop.svn.wordpress.org/trunk@37556


git-svn-id: http://core.svn.wordpress.org/trunk@37524 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-25 13:33:29 +00:00
Drew Jaynes
d28f1a08ef Docs: Apply inline @see tags to hooks referenced in DocBlocks in a variety of wp-includes/* files.
Applying these specially-crafted `@see` tags allows the Code Reference parser to recognize and link these elements as actions and filters.

See #36921.

Built from https://develop.svn.wordpress.org/trunk@37543


git-svn-id: http://core.svn.wordpress.org/trunk@37511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-23 19:01:27 +00:00
Drew Jaynes
eb83bf3700 Docs: Standardize filter docs in wp-includes/media.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37505


git-svn-id: http://core.svn.wordpress.org/trunk@37473 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:32:27 +00:00
Andrew Ozz
d508fcdb51 Responsive Images: the src of the image has to be first in the srcset, because of a bug in iOS8. Update the unit tests to reflect the changes.
Props jaspermdegroot, joemcgill, azaozz.
Fixes #35030.
Built from https://develop.svn.wordpress.org/trunk@37034


git-svn-id: http://core.svn.wordpress.org/trunk@37001 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-18 19:45:26 +00:00
John Blackbourn
5330f669f2 Media: When generating the base URL to be used in the srcset attribute, use an https scheme when the image base URL's host matches that of the current host, and the request is being served over HTTPS. This prevents mixed content warnings caused by http embedded media.
See #34945
Props joemcgill

Built from https://develop.svn.wordpress.org/trunk@37022


git-svn-id: http://core.svn.wordpress.org/trunk@36989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-16 22:49:26 +00:00
Dominik Schilling
7f4b93e61e Responsive images: Skip images with a missing $image_meta['file'] value.
Props joemcgill.
See [37002].
Fixes #35480.
Built from https://develop.svn.wordpress.org/trunk@37018


git-svn-id: http://core.svn.wordpress.org/trunk@36985 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-16 17:48:26 +00:00
Andrew Ozz
effedfdff4 Responsive images: do not attempt to create srcset when the image meta is missing or corrupted.
Props overclokk, jaspermdegroot, joemcgill.
Fixes #35480.
Built from https://develop.svn.wordpress.org/trunk@37002


git-svn-id: http://core.svn.wordpress.org/trunk@36969 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-16 02:18:25 +00:00
Dominik Schilling
7e8e3429e1 Media: Change wording for media files which aren't attached.
The media library can contain files which aren't attached yet. When attaching a file you currently get "Media attachment reattached.", or the opposite "Media attachment detached.". That's redundant and can be inaccurate. It's also not easy to translate in some languages.

This change generalizes the strings to refer to a "media file" instead.

Props SergeyBiryukov, ocean90, netweb.
Fixes #36089.
Built from https://develop.svn.wordpress.org/trunk@36887


git-svn-id: http://core.svn.wordpress.org/trunk@36854 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-08 17:43:25 +00:00
Andrew Ozz
2d94e025a2 Replace wp_upload_dir() with the new wp_get_upload_dir() in all cases where a file is not being uploaded. Deprecate _wp_upload_dir_baseurl(), and replace it with wp_get_upload_dir().
See #34359.
Built from https://develop.svn.wordpress.org/trunk@36569


git-svn-id: http://core.svn.wordpress.org/trunk@36536 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-18 00:24:27 +00:00
Rachel Baker
cf0288e291 Media: Fix inline docs typo inside wp_calculate_image_srcset() function.
mathces -> matches.

Props neoxx.

Fixes #35714.
Built from https://develop.svn.wordpress.org/trunk@36517


git-svn-id: http://core.svn.wordpress.org/trunk@36484 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-12 18:15:30 +00:00
Pascal Birchler
fdb6bbfa10 Media: After [36240], remove some unneeded whitespace.
Props ocean90.
See #35367.
Built from https://develop.svn.wordpress.org/trunk@36241


git-svn-id: http://core.svn.wordpress.org/trunk@36208 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-09 14:29:26 +00:00
Pascal Birchler
8ee945d82f Media: Fix wp_audio_shortcode and wp_video_shortcode attributes handling.
Although documented, the `class` and `style` attributes were simply ignored.
Adds unit tests.

Fixes #35367.
Built from https://develop.svn.wordpress.org/trunk@36240


git-svn-id: http://core.svn.wordpress.org/trunk@36207 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-09 14:18:27 +00:00
Andrew Ozz
d03333735f Responsive images: fix the check whether the attachment meta matches the image src to work with http/https and CDNs.
Props webaware, joemcgill, azaozz.
Fixes #35045 and #35102 for trunk.
Built from https://develop.svn.wordpress.org/trunk@36121


git-svn-id: http://core.svn.wordpress.org/trunk@36087 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-30 01:04:27 +00:00
Andrew Ozz
597bbf0318 Responsive images: add compatibility for versions < 2.7 when the full image path was stored in the metadata. Introduces _wp_get_attachment_relative_path() and uses it in wp_get_attachment_url().
Props dd32, SergeyBiryukov.
Fixes #35106 for trunk.
Built from https://develop.svn.wordpress.org/trunk@36120


git-svn-id: http://core.svn.wordpress.org/trunk@36086 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-30 00:06:28 +00:00
Andrew Ozz
698b825760 Responsive images: when creating srcset do not exclude the image size which is in the src attribute even when it is larger than max_srcset_image_width.
Props joemcgill.
Fixes #35108 for trunk.
Built from https://develop.svn.wordpress.org/trunk@36110


git-svn-id: http://core.svn.wordpress.org/trunk@36075 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-28 02:29:28 +00:00
Andrew Ozz
6e49a963b1 Responsive images: fix calculations when determining whether to include particular image file in srcset.
Props joemcgill.
Fixes #34955 for trunk.
Built from https://develop.svn.wordpress.org/trunk@36031


git-svn-id: http://core.svn.wordpress.org/trunk@35996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-20 02:39:32 +00:00
Mike Schroder
6f3da8d57b Media: Don't generate responsive image attributes if src does not match ID in wp-image- class.
We rely on the `wp-image-` class to quickly find an attachment ID to add responsive image attributes.
To avoid incorrect images being displayed, do not add these attributes if the `src` does not match the
meta from the attachment ID in the class.

Props azaozz, kovshenin, joemcgill.
Fixes: #34898.

Built from https://develop.svn.wordpress.org/trunk@35820


git-svn-id: http://core.svn.wordpress.org/trunk@35784 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-07 20:08:51 +00:00
Ella Iseulde Van Dorpe
657d3b50af Make date format consistent across the admin
The 'date_format' and 'time_format' options shouldn't affect the backend.

See #30864


Built from https://develop.svn.wordpress.org/trunk@35811


git-svn-id: http://core.svn.wordpress.org/trunk@35775 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-07 04:26:27 +00:00
Scott Taylor
9b5ffe8062 Responsive Images: Currently images are included in the srcset if the aspect ratio difference is smaller than 0.01. This number is too high, set it to 0.002
Props joemcgill.
Fixes #34810.

Built from https://develop.svn.wordpress.org/trunk@35755


git-svn-id: http://core.svn.wordpress.org/trunk@35719 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-01 20:58:24 +00:00
Scott Taylor
eaae2546f5 Media: don't use get_media_embedded_in_content() in wp_make_content_images_responsive().
Adds unit test.

Props azaozz.
Fixes #34807.

Built from https://develop.svn.wordpress.org/trunk@35753


git-svn-id: http://core.svn.wordpress.org/trunk@35717 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-01 20:50:25 +00:00
Sergey Biryukov
bc1e479fd0 After [35718], update the location of some files in This filter is documented in docs.
Partially reverts [33954].

Fixes #33413.
Built from https://develop.svn.wordpress.org/trunk@35725


git-svn-id: http://core.svn.wordpress.org/trunk@35689 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-22 03:51:28 +00:00
Sergey Biryukov
4341637ba6 Docs: Remove redundant type strings from the wp_calculate_image_srcset filter DocBlock.
Props DH-Shredder, joemcgill.
See #34733.
Built from https://develop.svn.wordpress.org/trunk@35716


git-svn-id: http://core.svn.wordpress.org/trunk@35680 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-20 06:16:26 +00:00
Sergey Biryukov
db4a87b0fd Docs: Add @see tags for wp_get_attachment_image_srcset() and wp_get_attachment_image_sizes().
Update `@see` tags for `wp_make_content_images_responsive()` and `wp_image_add_srcset_and_sizes()`.

Props jaspermdegroot.
See #34733.
Built from https://develop.svn.wordpress.org/trunk@35715


git-svn-id: http://core.svn.wordpress.org/trunk@35679 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-20 06:13:26 +00:00
Drew Jaynes
b10a946c2c Docs: Clarify some parameter and return descriptions in the DocBlocks for wp_get_attachment_image_srcset() and wp_calculate_image_srcset(), wp_get_attachment_image_sizes(), and the wp_calculate_image_srcset filter.
Props joemcgill.
See #34733.

Built from https://develop.svn.wordpress.org/trunk@35696


git-svn-id: http://core.svn.wordpress.org/trunk@35660 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-18 22:44:27 +00:00
Scott Taylor
13ea469061 Media: when making images responsive, check if they already have a sizes attribute.
Adds unit test.

Props jaspermdegroot.
Fixes #34678.

Built from https://develop.svn.wordpress.org/trunk@35678


git-svn-id: http://core.svn.wordpress.org/trunk@35642 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-18 19:48:26 +00:00
Drew Jaynes
3a45270a43 Docs: Properly mark optional parameters as such in the DocBlock and function signature for wp_calculate_image_sizes().
Also updates the subsequent hook docs for the `wp_calculate_image_sizes` filter.

Props joemcgill.
Fixes #34612.

Built from https://develop.svn.wordpress.org/trunk@35672


git-svn-id: http://core.svn.wordpress.org/trunk@35636 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-18 18:53:27 +00:00
Drew Jaynes
a90d108b82 Docs: Remove an empty line from the hook doc for the wp_calculate_image_srcset filter, introduced in [35592].
Props kraftbj.
See #34612.

Built from https://develop.svn.wordpress.org/trunk@35601


git-svn-id: http://core.svn.wordpress.org/trunk@35565 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-10 17:15:29 +00:00
Drew Jaynes
c98b62c452 Docs: Fix some formatting in the hook doc for the wp_calculate_image_srcset filter and clarify the summary.
See #34612.

Built from https://develop.svn.wordpress.org/trunk@35592


git-svn-id: http://core.svn.wordpress.org/trunk@35556 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-09 23:34:27 +00:00
Andrew Ozz
7d0aa3a54a Responsive images: properly arrange the parameters for the wp_calculate_image_srcset filter and add fix the inline documentation.
Props joemcgill.
Fixes #34612.
Built from https://develop.svn.wordpress.org/trunk@35591


git-svn-id: http://core.svn.wordpress.org/trunk@35555 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-09 23:30:26 +00:00
Andrew Ozz
1b44ae6663 Responsive images: make the new functions and filters signatures more consistent.
Props joemcgill.
Fixes #34612.
Built from https://develop.svn.wordpress.org/trunk@35569


git-svn-id: http://core.svn.wordpress.org/trunk@35533 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-07 21:36:27 +00:00
Scott Taylor
e649fabb6a Accessibility: add missing alt attributes to a gaggle of <img>s.
Props afercia.
Fixes #34583.

Built from https://develop.svn.wordpress.org/trunk@35567


git-svn-id: http://core.svn.wordpress.org/trunk@35531 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-07 16:12:27 +00:00
Andrew Ozz
72a1124c45 Responsive images: omit full size images from srcset attributes when the original file is an intermediate sized GIF so we don't accidentally add animation to an otherwise flat image. Update the tests to cover this case.
Props joemcgill, H-Shredder, SergeyBiryukov.
Fixes #34528.
Built from https://develop.svn.wordpress.org/trunk@35561


git-svn-id: http://core.svn.wordpress.org/trunk@35525 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-07 02:10:25 +00:00
Andrew Ozz
09c16cb4ac Responsive images: do not generate srcset for GIFs that are inserted at full size. Prevents breaking animated GIFs.
Props joemcgill.
Fixes #34528.
Built from https://develop.svn.wordpress.org/trunk@35524


git-svn-id: http://core.svn.wordpress.org/trunk@35488 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-04 21:44:25 +00:00
Andrew Ozz
9e436c7e0f Responsive images:
- Fix `_wp_upload_dir_baseurl()` to cache by blog_id.
- Replace `path_join()` with `trailingslashit()`, it's much faster.
- Rename $image_url to $image_src for consistency (used at about 50 other places).
- Couple of tests fixes.

See #34430.
Built from https://develop.svn.wordpress.org/trunk@35498


git-svn-id: http://core.svn.wordpress.org/trunk@35462 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-04 00:22:26 +00:00
Andrew Ozz
ea3d7c7962 Responsive images:
- More fixes to inline docs.
- Replace the last `wp_get_attachment_metadata()` with `get_post_meta()`.
- For consistency only accept array or named size in `wp_get_attachment_image_sizes()`.

Props jaspermdegroot.
See #34430.
Built from https://develop.svn.wordpress.org/trunk@35491


git-svn-id: http://core.svn.wordpress.org/trunk@35455 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-03 00:19:28 +00:00
Andrew Ozz
26b6acd081 Responsive images: add $image_url parameter to wp_get_attachment_image_sizes() and use it in the filter. This allows themes and plugins to identify the image.
Props joemcgill.
Fixes #34477.
Built from https://develop.svn.wordpress.org/trunk@35481


git-svn-id: http://core.svn.wordpress.org/trunk@35445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-31 22:49:24 +00:00
Scott Taylor
d8eacd51d8 Media: add a new image size, medium_large. Bumps db version to add new options.
Adds unit tests.

Props DH-Shredder, joemcgill, azaozz.
Fixes #34196.

Built from https://develop.svn.wordpress.org/trunk@35479


git-svn-id: http://core.svn.wordpress.org/trunk@35443 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-31 20:50:25 +00:00
Andrew Ozz
8edcfabf9c Responsive images: few more inline docs fixes.
Props jaspermdegroot.
See #34430.
Built from https://develop.svn.wordpress.org/trunk@35465


git-svn-id: http://core.svn.wordpress.org/trunk@35429 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-30 23:36:25 +00:00
Andrew Ozz
2021bc0da2 Responsive images:
- Merge `wp_image_srcset_attr()` into `wp_calculate_image_srcset()`.
- Remove the `wp_image_srcset` filter.
- Fix the tests for the above changes. 

See #34430.
Built from https://develop.svn.wordpress.org/trunk@35464


git-svn-id: http://core.svn.wordpress.org/trunk@35428 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-30 23:27:24 +00:00
Andrew Ozz
d7da5970fa Responsive images: add inline docs for private functions.
Props swissspidy.
See #34430.
Built from https://develop.svn.wordpress.org/trunk@35426


git-svn-id: http://core.svn.wordpress.org/trunk@35390 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-28 21:55:24 +00:00
Andrew Ozz
fd11ef9c45 Responsive images:
- Check if wp_get_attachment_metadata() has returned an array to prevent errors when using SVGs.
- Only add the srcset attribute if there will be a sizes attribute.
- Better filter names.
- Some more inline docs fixes.

Props jaspermdegroot.
See #34430.
Built from https://develop.svn.wordpress.org/trunk@35419


git-svn-id: http://core.svn.wordpress.org/trunk@35383 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-28 20:01:26 +00:00
Andrew Ozz
61d21cc0d9 Responsive images:
- Introduce `wp_calculate_image_srcset()` that replaces `wp_get_attachment_image_srcset_array()` and is used as lower level function for retrieving the srcset data as array.
- Use the new function when generating `srcset` and `sizes` on the front-end. This is faster as no (other) image API functions are used.
- Change the `wp_get_attachment_image_srcset()`. Now it is meant for use in templates and is no longer used in core.
- A few logic fixes and improvements.
- Some names changed to be (hopefully) more descriptive.
- Fixed/updated tests.

Props joemcgill, jaspermdegroot, azaozz.
See #34430.
Built from https://develop.svn.wordpress.org/trunk@35412


git-svn-id: http://core.svn.wordpress.org/trunk@35376 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-28 05:41:24 +00:00
Sergey Biryukov
1acf9e9e49 After [35402], don't unnecessary run wp_get_attachment_metadata(), wp_get_attachment_image_srcset(), and wp_get_attachment_image_sizes() in wp_img_add_srcset_and_sizes().
See #34379.
Built from https://develop.svn.wordpress.org/trunk@35405


git-svn-id: http://core.svn.wordpress.org/trunk@35369 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-26 18:42:24 +00:00
Sergey Biryukov
1e59e53dd2 After [35402], don't unnecessary run wp_get_attachment_image_srcset() and wp_get_attachment_image_sizes() in wp_get_attachment_image() if srcset is passed as an argument.
See #34379.
Built from https://develop.svn.wordpress.org/trunk@35404


git-svn-id: http://core.svn.wordpress.org/trunk@35368 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-26 18:40:24 +00:00
Sergey Biryukov
f5d0260e4d Remove assignments from conditions in wp_get_attachment_image() and wp_img_add_srcset_and_sizes().
See #34379.
Built from https://develop.svn.wordpress.org/trunk@35402


git-svn-id: http://core.svn.wordpress.org/trunk@35366 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-26 16:29:26 +00:00
Sergey Biryukov
64a79eeffa Docs: After [34453], correct inline comments in wp_get_attachment_image_sizes().
Props jaspermdegroot.
Fixes #34453.
Built from https://develop.svn.wordpress.org/trunk@35401


git-svn-id: http://core.svn.wordpress.org/trunk@35365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-26 16:17:25 +00:00
Andrew Ozz
902f0f1a98 Responsive Images: fix typo in r35358.
Props aduth.
See #34341.
Built from https://develop.svn.wordpress.org/trunk@35378


git-svn-id: http://core.svn.wordpress.org/trunk@35342 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-23 17:38:25 +00:00
Andrew Ozz
dfc2412be1 Responsive Images: limit the size of images included in srcset attributes. Introduce max_srcset_image_width filter to adjust the limit.
Props joemcgill.
Fixes #34341.
Built from https://develop.svn.wordpress.org/trunk@35358


git-svn-id: http://core.svn.wordpress.org/trunk@35324 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-22 19:31:25 +00:00
Scott Taylor
318ad90a22 Media: in wp_get_attachment_image_sizes(), to streamline and for performance:
* Change the 3rd arg from `args` to `width`
* Change `wp_image_sizes_args` filter to `wp_get_attachment_image_sizes`

Updates unit tests.

Props joemcgill.
Fixes #34379.

Built from https://develop.svn.wordpress.org/trunk@35355


git-svn-id: http://core.svn.wordpress.org/trunk@35321 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-22 16:46:24 +00:00
Drew Jaynes
81524f3bfc Filesystem: Following the introduction of the KB|MB|GB|TB_IN_BYTES constants in [35286], use them in various places in core.
Props sudar.
Fixes #22405.

Built from https://develop.svn.wordpress.org/trunk@35325


git-svn-id: http://core.svn.wordpress.org/trunk@35291 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-21 14:03:25 +00:00
Drew Jaynes
3686b78448 Media: Introduce the image_get_intermediate_size filter to its like-named function, making it possible to manipulate returned intermedia image size data.
Covers both the default and meaningful short-circuit return cases. Also adds a hash notation to the return documentation in the DocBlock.

Props A5hleyRich, DH-Shredder, wonderboymusic.
Fixes #34124.

Built from https://develop.svn.wordpress.org/trunk@35289


git-svn-id: http://core.svn.wordpress.org/trunk@35255 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-20 07:24:27 +00:00
Scott Taylor
443ce28304 Media: in wp_get_attachment_image_sizes(), ensure that $img_width exists when the image does not.
Props kraftbj.
See #33641.


Built from https://develop.svn.wordpress.org/trunk@35250


git-svn-id: http://core.svn.wordpress.org/trunk@35216 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-17 22:12:24 +00:00
Drew Jaynes
d4711aff8a Docs: Fix a typo in an inline comment in wp_get_attachment_image_srcset_array().
Props neoxx.
Fixes #34319.

Built from https://develop.svn.wordpress.org/trunk@35210


git-svn-id: http://core.svn.wordpress.org/trunk@35176 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-15 20:52:24 +00:00
Scott Taylor
affe1ab5ad Media: avoid "divide by zero" in wp_get_attachment_image_srcset_array().
Fixes #34238.

Built from https://develop.svn.wordpress.org/trunk@35081


git-svn-id: http://core.svn.wordpress.org/trunk@35046 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 21:00:26 +00:00
Drew Jaynes
2d677edb1f Docs: The $size parameter for the get_image_tag hook also accepts an array.
See #34257. See [35038].

Built from https://develop.svn.wordpress.org/trunk@35078


git-svn-id: http://core.svn.wordpress.org/trunk@35043 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 17:11:24 +00:00
Drew Jaynes
36ef44735d Docs: The $size parameter for the get_image_tag_class hook also accepts an array.
See #34257. See [35037].

Built from https://develop.svn.wordpress.org/trunk@35077


git-svn-id: http://core.svn.wordpress.org/trunk@35042 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 17:09:25 +00:00
Drew Jaynes
d4fe129e1a Docs: Adjust the order of 'width' and 'height' (for consistency) for the $crop parameter documentation in image_make_intermediate_size().
Props jaspermdegroot.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35054


git-svn-id: http://core.svn.wordpress.org/trunk@35019 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 16:06:24 +00:00
Drew Jaynes
8b26e5debc Docs: Adjust the order of 'width' and 'height' (for consistency) for the $crop parameter documentation in image_resize_dimensions().
Also similarly adjusts the `$crop` parameter description in the corresponding `image_resize_dimensions` hook doc.

Props jaspermdegroot.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35053


git-svn-id: http://core.svn.wordpress.org/trunk@35018 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 16:02:24 +00:00
Drew Jaynes
e0529ebdb5 Docs: Adjust the order of 'width' and 'height' (for consistency) for the $crop parameter documentation in set_post_thumbnail_size().
Props jaspermdegroot.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35052


git-svn-id: http://core.svn.wordpress.org/trunk@35017 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 16:00:26 +00:00
Drew Jaynes
771248a1f3 Docs: Adjust the order of 'width' and 'height' (for consistency) for the $crop parameter documentation in add_image_size().
Props jaspermdegroot.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35051


git-svn-id: http://core.svn.wordpress.org/trunk@35016 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:59:25 +00:00
Drew Jaynes
d0a392a34c Docs: Adjust documentation for the $size parameter in adjacent_image_link() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35049


git-svn-id: http://core.svn.wordpress.org/trunk@35014 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:53:25 +00:00
Drew Jaynes
81f67bae13 Docs: Adjust documentation for the $size parameter in next_image_link() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35048


git-svn-id: http://core.svn.wordpress.org/trunk@35013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:50:24 +00:00
Drew Jaynes
141b096f6d Docs: Adjust documentation for the $size parameter in previous_image_link() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35047


git-svn-id: http://core.svn.wordpress.org/trunk@35012 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:48:25 +00:00
Drew Jaynes
1571907571 Docs: Normalize spacing in the $attr hash notation for gallery_shortcode() following [35045].
See #34257. See #32246.

Built from https://develop.svn.wordpress.org/trunk@35046


git-svn-id: http://core.svn.wordpress.org/trunk@35011 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:46:24 +00:00
Drew Jaynes
e4f9e334ea Docs: Adjust documentation for the $size argument in gallery_shortcode to clarify the required order of width and height values when passing an array.
Also adds the `array` type to the argument documentation.

Props jaspermdegroot.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35045


git-svn-id: http://core.svn.wordpress.org/trunk@35010 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:43:25 +00:00
Drew Jaynes
9d5d27c26d Docs: Adjust documentation for the $size parameter in wp_get_attachment_image_url() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35044


git-svn-id: http://core.svn.wordpress.org/trunk@35009 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:39:25 +00:00
Drew Jaynes
987fe676a9 Docs: Adjust documentation for the $size parameter in the wp_get_attachment_image_attributes hook doc to clarify the required order of width and height values when an array is passed.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35043


git-svn-id: http://core.svn.wordpress.org/trunk@35008 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:38:24 +00:00
Drew Jaynes
5631df0151 Docs: Adjust documentation for the $size parameter in wp_get_attachment_image() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35042


git-svn-id: http://core.svn.wordpress.org/trunk@35007 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:36:24 +00:00
Drew Jaynes
c02b132fcc Docs: Adjust documentation for the $size parameter in the wp_get_attachment_image_src hook doc to clarify the required order of width and height values when an array is passed.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35041


git-svn-id: http://core.svn.wordpress.org/trunk@35006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:34:24 +00:00
Drew Jaynes
8f3f5dba35 Docs: Adjust documentation for the $size parameter in wp_get_attachment_image_src() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35040


git-svn-id: http://core.svn.wordpress.org/trunk@35005 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:31:24 +00:00
Drew Jaynes
50fd2488f4 Docs: Adjust documentation for the $size parameter in image_get_intermediate_size() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35039


git-svn-id: http://core.svn.wordpress.org/trunk@35004 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:29:24 +00:00
Drew Jaynes
5a0eaa17de Docs: Adjust documentation for the $size parameter in the get_image_tag hook doc to clarify the required order of width and height values when an array is passed.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35038


git-svn-id: http://core.svn.wordpress.org/trunk@35003 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:27:25 +00:00
Drew Jaynes
698b5f6880 Docs: Adjust documentation for the $size parameter in the get_image_tag_class hook doc to clarify the required order of width and height values when an array is passed.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35037


git-svn-id: http://core.svn.wordpress.org/trunk@35002 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:26:25 +00:00
Drew Jaynes
71932de1f5 Docs: Adjust documentation for the $size parameter in get_image_tag() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35036


git-svn-id: http://core.svn.wordpress.org/trunk@35001 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:21:25 +00:00
Drew Jaynes
3f8aaf753a Docs: Adjust documentation for the $size parameter in the image_downside hook doc to clarify the required order of width and height values when an array is passed.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35035


git-svn-id: http://core.svn.wordpress.org/trunk@35000 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:20:23 +00:00
Drew Jaynes
45174a8996 Docs: Adjust documentation for the $size parameter in image_downsize() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35034


git-svn-id: http://core.svn.wordpress.org/trunk@34999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:18:24 +00:00
Drew Jaynes
7c25ad0613 Docs: Adjust documentation for the $size parameter in image_constrain_size_for_editor() to clarify the required order of width and height values when passing an array.
See #34257.

Built from https://develop.svn.wordpress.org/trunk@35033


git-svn-id: http://core.svn.wordpress.org/trunk@34998 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 15:16:24 +00:00
Drew Jaynes
1e2caf6712 Docs: Update an inline comment in wp_get_attachment_image_sizes(), which came in as part of the Responsive Images merge in [34855].
Props joemcgill.
See #33641.

Built from https://develop.svn.wordpress.org/trunk@34876


git-svn-id: http://core.svn.wordpress.org/trunk@34841 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 17:47:24 +00:00
Scott Taylor
99be7beda0 Merge the Responsive Images feature plugin into core, initial commit. See: https://github.com/ResponsiveImagesCG/wp-tevko-responsive-images/
New functions in `media.php`:
* `wp_get_attachment_image_srcset_array()` - Returns an array of image candidate string data used to build a `srcset` value for an attachment given an `$attachement_id` and `$size`.
* `wp_get_attachment_image_srcset()` - Returns the `srcset` value for an attachment given an `$attachement_id` and `$size`.
* `wp_get_attachment_image_sizes()` - Returns the `sizes` value for an attachment given an `$attachement_id` and `$size` and optional arguments used to alter its output.
* `wp_make_content_images_responsive()` - A display filter for adding `srcset` and `sizes` to images embedded in content.
* `wp_img_add_srcset_and_sizes()` - A utility function used by `wp_make_content_images_responsive()` to add `srcset` and `sizes` to a single `<img>` element.

Modifies existing core functions:
* Modify `wp_get_attachment_image()` so the HTML returned for an image includes `srcset` and `sizes`.
* Modify `get_media_embedded_in_content()` (sup, 3.6 leftover) by adding `<img>` to the list of accepted tags that can be matched in content. This is used in `wp_make_content_images_responsive()` to find all of the images embedded in content before passing them off to `wp_img_add_srcset_and_sizes()`.

Tests:
* Add a new factory method to `WP_UnitTest_Factory_For_Attachment` named `create_upload_object()`
* Adds unit tests
* Updates unit tests

Props joemcgill, tevko, jaspermdegroot, mdmcginn, barryceelen, peterwilsoncc, fsylum, wonderboymusic, chriscoyier, benjaminpick, jrfnl, #12kingkool68, janhenckens, ryanmarkel, side777, ryelle, wturrell, micahmills, mattbagwell, coliff, DrewAPicture.
See #33641.

Built from https://develop.svn.wordpress.org/trunk@34855


git-svn-id: http://core.svn.wordpress.org/trunk@34820 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 04:59:24 +00:00
Scott Taylor
d96fb9def9 Embeds: move some functions from media.php to a new file, embed-functions.php, via svn cp
See #32522.

Built from https://develop.svn.wordpress.org/trunk@34851


git-svn-id: http://core.svn.wordpress.org/trunk@34816 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 03:59:24 +00:00
Scott Taylor
6cde1a05cb After [34629], use $size_class instead of $size.
See #32093.

Built from https://develop.svn.wordpress.org/trunk@34657


git-svn-id: http://core.svn.wordpress.org/trunk@34621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-28 02:50:24 +00:00
Scott Taylor
1b6ed5cbb7 Add size-$size class to <img> in wp_get_attachment_image().
Fixes #32093.

Built from https://develop.svn.wordpress.org/trunk@34629


git-svn-id: http://core.svn.wordpress.org/trunk@34593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-27 17:54:27 +00:00
John Blackbourn
aa35e473f7 callback is not a valid type in PHP, PSR-5, or phpDocumentor. callable should be used instead.
Fixes #34032

Built from https://develop.svn.wordpress.org/trunk@34566


git-svn-id: http://core.svn.wordpress.org/trunk@34530 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-25 23:58:25 +00:00
Scott Taylor
8cc5a142e4 Media Modal: move the translation strings for insertIntoPost and uploadedToThisPost to the get_post_type_labels() array as insert_into_item and uploaded_to_this_item.
Props flixos90.
Fixes #33616.

Built from https://develop.svn.wordpress.org/trunk@34472


git-svn-id: http://core.svn.wordpress.org/trunk@34436 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-24 03:22:24 +00:00
Scott Taylor
d165b25920 Include fourth array parameter in return value doc block for wp_get_attachment_image_src().
Props kadamwhite.
Fixes #33905.

Built from https://develop.svn.wordpress.org/trunk@34470


git-svn-id: http://core.svn.wordpress.org/trunk@34434 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-24 03:14:24 +00:00
Scott Taylor
2ddc1d2f3a Media: Add a new function, wp_get_attachment_image_url(), which is a shortcut for wp_get_attachment_image_src() - same function signature, but returns just the URL based on $size.
Adds unit test.

Props dipesh.kakadiya, swissspidy, sebastian.pisula.
Fixes #33878.

Built from https://develop.svn.wordpress.org/trunk@34372


git-svn-id: http://core.svn.wordpress.org/trunk@34336 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-22 04:13:27 +00:00
Drew Jaynes
bbae198372 Docs: Add a more complete return description for the array of data (or false) returned by image_downsize().
If not short-circuited via the `image_downsize` boolean filter, `image_downsize()` returns an array of data including the image URL, width, height, and whether the image size is intermediate, in that order. Otherwise, it returns false.

Fixes #30636.

Built from https://develop.svn.wordpress.org/trunk@34362


git-svn-id: http://core.svn.wordpress.org/trunk@34326 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-21 10:22:26 +00:00
Scott Taylor
1f3dce8c75 Media: Ensure that HTML5 captions apply the 'img_caption_shortcode_width'.
Props joemcgill.
Fixes #31053.

Built from https://develop.svn.wordpress.org/trunk@34261


git-svn-id: http://core.svn.wordpress.org/trunk@34225 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-17 06:04:24 +00:00
Scott Taylor
ad0eb9c442 Media: In wp_prepare_attachment_for_js(), don't call file_exists() and filesize() to retrieve $bytes if the data is already present in $meta. This is how the same code in attachment_submitbox_metadata() already works.
Props polevaultweb.
Fixes #33214.

Built from https://develop.svn.wordpress.org/trunk@34258


git-svn-id: http://core.svn.wordpress.org/trunk@34222 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-17 05:03:24 +00:00
Scott Taylor
191400f9e6 Don't ever use the guid value when retrieving URLs for media, use wp_get_attachment_url(). Use get_attached_file() for path to file.
Fixes #33386.

Built from https://develop.svn.wordpress.org/trunk@34163


git-svn-id: http://core.svn.wordpress.org/trunk@34131 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-15 02:50:25 +00:00
Nikolay Bachiyski
3778cae8ec Shortcodes: don't allow unclosed HTML elements in attributes
Built from https://develop.svn.wordpress.org/trunk@34134


git-svn-id: http://core.svn.wordpress.org/trunk@34102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-14 22:36:24 +00:00
Scott Taylor
c1bb5b5ce3 After [33843], update the location of some files in This filter is documented in docs
Props dimadin.
See #33413.

Built from https://develop.svn.wordpress.org/trunk@33954


git-svn-id: http://core.svn.wordpress.org/trunk@33923 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-08 22:17:26 +00:00
Sergey Biryukov
bffe6a63ba Make curly quotes in playlist item title translatable.
fixes #33391.
Built from https://develop.svn.wordpress.org/trunk@33844


git-svn-id: http://core.svn.wordpress.org/trunk@33812 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-01 13:50:21 +00:00
Scott Taylor
0d3f30ba61 Improve the reliability of the crop returned by image_get_intermediate_size().
Add a bunch of unit tests to `tests/image/intermediate_size.php`.

Props joemcgill, ericlewis, kitchin, SergeyBiryukov, chipbennett.
Fixes #17626.

Built from https://develop.svn.wordpress.org/trunk@33807


git-svn-id: http://core.svn.wordpress.org/trunk@33775 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-30 02:41:21 +00:00
Scott Taylor
42b6ac80e7 Ensure that attachment_url_to_postid() matches cross-scheme when front-end and back-end schemes are different.
Adds unit test.

Props welcher.
Fixes #33109.

Built from https://develop.svn.wordpress.org/trunk@33705


git-svn-id: http://core.svn.wordpress.org/trunk@33672 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-22 16:39:25 +00:00
Scott Taylor
b19bb99853 Playlists, for .wp-playlist-item-title elements: move the curly quotes to CSS pseudo-element content, making them easier to override or remove.
Fixes #33391.

Built from https://develop.svn.wordpress.org/trunk@33643


git-svn-id: http://core.svn.wordpress.org/trunk@33610 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-19 05:51:25 +00:00
Helen Hou-Sandí
d22adb0d6e Ensure the caption shortcode outputs a valid HTML ID.
fixes #33179.

Built from https://develop.svn.wordpress.org/trunk@33489


git-svn-id: http://core.svn.wordpress.org/trunk@33456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-29 17:59:24 +00:00
Scott Taylor
2b513bf60a wp_audio|video_shortcode() doesn't allow you to pass id, the docs shall reflect that.
Props thorbrink.
See #32855.

Built from https://develop.svn.wordpress.org/trunk@33025


git-svn-id: http://core.svn.wordpress.org/trunk@32996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-01 15:01:26 +00:00
Konstantin Obenland
8e57bef0ee After [32866], change filter name.
While filter names generally don't have to be tied to the function in which they 
are applied, the API for media display generally seems to use the
`wp_get_attachment_*` pattern.

Props DrewAPicture.
Fixes #32363.


Built from https://develop.svn.wordpress.org/trunk@33018


git-svn-id: http://core.svn.wordpress.org/trunk@32989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-01 03:47:24 +00:00
Scott Taylor
747b1eb713 After [32866], fix doc blocks.
Props DrewAPicture.
See #32363.

Built from https://develop.svn.wordpress.org/trunk@32949


git-svn-id: http://core.svn.wordpress.org/trunk@32920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-25 21:02:25 +00:00
Scott Taylor
3b88c839f9 In wp_prepare_attachment_for_js(), when setting filename, call wp_basename() on the result of get_attached_file(), not WP_Post->guid. guid can be set to the result get_permalink(), which is not a file path.
Props daxelrod.
Fixes #32531.

Built from https://develop.svn.wordpress.org/trunk@32914


git-svn-id: http://core.svn.wordpress.org/trunk@32885 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-23 18:30:26 +00:00
Scott Taylor
ec6dfc7f2b Add a filter in wp_get_attachment_image_src() called attachment_image_src.
Props eclev91, MikeHansenMe.
Fixes #32363.

Built from https://develop.svn.wordpress.org/trunk@32866


git-svn-id: http://core.svn.wordpress.org/trunk@32837 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-19 21:27:25 +00:00
Scott Taylor
b126a0144f In the youtube_embed_url embed handler, make embed a non-capturing group that alternately matches for v - YouTube supports both URL paths.
Add unit test cases.

Props dmchale for some patch work.
Fixes #32161.

Built from https://develop.svn.wordpress.org/trunk@32787


git-svn-id: http://core.svn.wordpress.org/trunk@32758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-16 00:35:25 +00:00
Sergey Biryukov
3fc78a1109 Avoid a PHP notice in wp_enqueue_media() if $post is null.
see #19257.
Built from https://develop.svn.wordpress.org/trunk@32675


git-svn-id: http://core.svn.wordpress.org/trunk@32645 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-31 21:54:25 +00:00
John Blackbourn
ff3f2ac243 Remove an embed handler accidentally introduced in r32673.
Built from https://develop.svn.wordpress.org/trunk@32674


git-svn-id: http://core.svn.wordpress.org/trunk@32644 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-31 16:56:26 +00:00
John Blackbourn
02192cb53f Introduce featured_image, set_featured_image, remove_featured_image, and use_featured_image post type labels when registering a post type in order to override the 'Featured Image' text and its related phrases.
Props johnbillion, mordauk, valendesigns.
Fixes #19257.

Built from https://develop.svn.wordpress.org/trunk@32673


git-svn-id: http://core.svn.wordpress.org/trunk@32643 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-31 16:54:27 +00:00
Scott Taylor
4bf8e158ec Fix doc blocks for media*.php
See #32444.

Built from https://develop.svn.wordpress.org/trunk@32609


git-svn-id: http://core.svn.wordpress.org/trunk@32579 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-26 19:23:25 +00:00
Dominik Schilling
5294e0e655 Rename get_media_embedded_in_content_allowed filter to media_embedded_in_content_allowed_types.
The new name fits better with some other `_allowed_` filters.

props DrewAPicture.
fixes #26675.
Built from https://develop.svn.wordpress.org/trunk@32113


git-svn-id: http://core.svn.wordpress.org/trunk@32092 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-11 21:49:27 +00:00
Drew Jaynes
8652208375 Remove unneeded spaces in the hook doc for the attachment_url_to_postid filter.
See [31867]. See #31888.

Built from https://develop.svn.wordpress.org/trunk@32043


git-svn-id: http://core.svn.wordpress.org/trunk@32022 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-05 16:07:27 +00:00
Andrew Ozz
d94050aafa Introduce attachment_url_to_postid filter to let plugins manage the uploads location better.
Props mattwiebe. Fixes #31717.
Built from https://develop.svn.wordpress.org/trunk@31867


git-svn-id: http://core.svn.wordpress.org/trunk@31846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-23 17:24:30 +00:00
Drew Jaynes
9c1283b28f Add hook documentation for the get_media_embedded_in_content_allowed filter, introduced in [31574].
Props valendesigns.
Fixes #26675.

Built from https://develop.svn.wordpress.org/trunk@31851


git-svn-id: http://core.svn.wordpress.org/trunk@31830 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-20 19:29:27 +00:00
Scott Taylor
8f0b626d13 Introduce a function, wp_attachment_is( $type, $post = 0 ), to collapse the logic for determining whether an attachment is an image, audio, or video.
This is admittedly a first pass. There needs to be a generic handler for when any other type is passed, but for now it accepts the whitelist.

See #25275.

Built from https://develop.svn.wordpress.org/trunk@31645


git-svn-id: http://core.svn.wordpress.org/trunk@31626 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-06 20:26:26 +00:00
Scott Taylor
295af37bd0 Improve get_media_embedded_in_content() so that it returns the media it finds in the same order that it appears in the content.
Adds unit test, updates another.

Props kopepasah.
See #26675.

Built from https://develop.svn.wordpress.org/trunk@31574


git-svn-id: http://core.svn.wordpress.org/trunk@31555 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-27 16:11:25 +00:00
Drew Jaynes
46286070a5 Clarify a wide variety of function, parameter, and return descriptions in DocBlocks throughout wp-includes/media.php.
Props stevegrunwell, DrewAPicture.
Fixes #28408.

Built from https://develop.svn.wordpress.org/trunk@31530


git-svn-id: http://core.svn.wordpress.org/trunk@31511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-24 07:42:24 +00:00
Drew Jaynes
ac4aae99e6 Add changelog entries to the post_gallery and post_playlist hook docs for the $instance variable that was added in [31304].
Props ninnypants for the initial patch.
Fixes #31151.

Built from https://develop.svn.wordpress.org/trunk@31309


git-svn-id: http://core.svn.wordpress.org/trunk@31290 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-31 00:33:22 +00:00
Sergey Biryukov
5289e92ef5 Rename $instances to $instance in wp_audio_shortcode() and wp_video_shortcode() for consistency with gallery_shortcode() and wp_playlist_shortcode().
see #31151.
Built from https://develop.svn.wordpress.org/trunk@31305


git-svn-id: http://core.svn.wordpress.org/trunk@31286 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-30 16:06:22 +00:00
Sergey Biryukov
fa86f3ef9c Pass the current shortcode instance ID to post_gallery and post_playlist filters.
props justincwatt.
fixes #31151.
Built from https://develop.svn.wordpress.org/trunk@31304


git-svn-id: http://core.svn.wordpress.org/trunk@31285 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-30 16:02:21 +00:00
Sergey Biryukov
247cdad571 attachment_url_to_postid() should always return an integer.
props nathan_dawson, ashfame.
fixes #31044.
Built from https://develop.svn.wordpress.org/trunk@31239


git-svn-id: http://core.svn.wordpress.org/trunk@31220 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-18 20:33:23 +00:00
Scott Taylor
fc843ce4d0 There are some random add_action() and add_filter() calls littered around some files in wp-includes/. These should be moved to wp-includes/default-filters.php with the rest of the registered hooks. It seems like this was the best practice for awhile and then we randomly stopped. This file loads way before any of the includes, so the hooks will be registered for any request that loads WordPress, even SHORTINIT - a lot of the hooks registered won't run anyways (that's already the case).
See #30947.

Built from https://develop.svn.wordpress.org/trunk@31168


git-svn-id: http://core.svn.wordpress.org/trunk@31149 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-12 16:40:23 +00:00
Sergey Biryukov
24b3ee8680 Make a hint on Edit Selection view in media modal more accurate, as it applies to all media files, not just images.
props pavelevap.
see #30931.
Built from https://develop.svn.wordpress.org/trunk@31102


git-svn-id: http://core.svn.wordpress.org/trunk@31083 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 21:24:23 +00:00
Scott Taylor
4feecb922c Use && instead of and in the 3 places where and was used.
See #30799.

Built from https://develop.svn.wordpress.org/trunk@31099


git-svn-id: http://core.svn.wordpress.org/trunk@31080 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 21:12:22 +00:00
Scott Taylor
60b0cd7943 The keyword elseif should be used instead of else if so that all control keywords look like single words.
This was a mess, is now standardized across the codebase, except for a few 3rd-party libs. 

See #30799.

Built from https://develop.svn.wordpress.org/trunk@31090


git-svn-id: http://core.svn.wordpress.org/trunk@31071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 07:05:25 +00:00
Scott Taylor
a5593a64d3 More-specific docs for wp_embed_handler_youtube().
Fixes #30711.

Built from https://develop.svn.wordpress.org/trunk@31018


git-svn-id: http://core.svn.wordpress.org/trunk@30999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-01 19:21:27 +00:00
Scott Taylor
952a5c9971 Support chromeless Vimeo via MEjs:
* Bump MediaElement script loader versions to 2.16.2 - missed in [30634], oops!
* Add `Froogaloop` to `js/mediaelement` scripts for Vimeo
* Check for Vimeo in the same locations that YouTube is checked
* Dynamically load Froogaloop script in admin when editing a TinyMCE view
* Edit MediaElement to call `mejs.$.extend` instead of `$.extend` in `mejs.HtmlMediaElementShim.createPlugin()`, since `$` is not available via WP's jQuery (I will report this upstream):
6f9a78e008/src/js/me-shim.js (L631)

Fixes #29267.

Built from https://develop.svn.wordpress.org/trunk@31016


git-svn-id: http://core.svn.wordpress.org/trunk@30997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-31 20:41:24 +00:00
Scott Taylor
5eb5afac34 For clarity, initialize some arrays that previously were only assigned via short circuit in loops.
See #30799.

Built from https://develop.svn.wordpress.org/trunk@30982


git-svn-id: http://core.svn.wordpress.org/trunk@30968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-20 22:47:22 +00:00
Scott Taylor
a0df295f5c Improve various @param docs.
See #30224.

Built from https://develop.svn.wordpress.org/trunk@30674


git-svn-id: http://core.svn.wordpress.org/trunk@30664 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 23:24:25 +00:00
Scott Taylor
ce05e4932f Use round() instead of floor() when resizing image dimensions.
Updates unit tests.

Props SergeyBiryukov, kitchin.
Fixes #18532.

Built from https://develop.svn.wordpress.org/trunk@30660


git-svn-id: http://core.svn.wordpress.org/trunk@30650 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 19:54:23 +00:00
Drew Jaynes
bffe95d34c Docs Formatting: Backtick-escape inline code for all remaining dynamic hook docs in wp-includes/*.
Affects DocBlocks for the following hooks:
* `auth_post_meta_{$meta_key}`
* `term_links-$taxonomy`
* `customize_render_control_ . $this->id`
* `customize_render_panel_{$this->id}`
* `customize_render_section_{$this->id}`
* `customize_preview_{$this->id}`
* `customize_save_ . $this->id_data[ 'base' ]`
* `customize_update_ . $this->type`
* `customize_value_ . $this->id_data[ 'base' ]`
* `customize_sanitize_js_{$this->id}`
* `comment_form_field_{$name}`
* `comment_{$old_status}_to_{$new_status}`
* `comment_{$new_status}_{$comment->comment_type}`
* `extra_{$context}_headers`
* `get_template_part_{$slug}`
* `get_the_generator_{$type}`
* `get_{$adjacent}_post_join`
* `get_{$adjacent}_post_where`
* `get_{$adjacent}_post_sort`
* `{$adjacent}_post_rel_link`
* `{$adjacent}_post_link`
* `{$adjacent}_image_link`
* `blog_option_{$option}`
* `$permastructname . _rewrite_rules`
* `{$type}_template`
* `theme_mod_{$name}`
* `pre_set_theme_mod_$name`
* `current_theme_supports-{$feature}`
* `get_user_option_{$option}`
* `edit_user_{$field}`
* `pre_user_{$field}`
* `user_{$field}`

See #30552.

Built from https://develop.svn.wordpress.org/trunk@30656


git-svn-id: http://core.svn.wordpress.org/trunk@30646 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 12:10:23 +00:00
Drew Jaynes
2f6c0d5e96 Improve inline documentation for image_constrain_size_for_editor().
Includes:
* Proper formatting, plus adding a type for the `$context` parameter
* Inline `@see` tags in the description and backtick-escaping inline code
* Parameter, type, and description alignment

Props tillkruess for the initial patch.
Fixes #30508.

Built from https://develop.svn.wordpress.org/trunk@30646


git-svn-id: http://core.svn.wordpress.org/trunk@30636 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 10:06:23 +00:00
Scott Taylor
5352f51516 Fix edge-case in media cropping where selection and destination are the same size.
Adds unit tests.

Props mboynes.
Fixes #19793.

Built from https://develop.svn.wordpress.org/trunk@30639


git-svn-id: http://core.svn.wordpress.org/trunk@30629 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 06:27:23 +00:00
Drew Jaynes
1e10385a90 Remove an invalid parameter from the DocBlock for the gallery_style hook.
Props keesiemeijer.
Fixes #30507.

Built from https://develop.svn.wordpress.org/trunk@30635


git-svn-id: http://core.svn.wordpress.org/trunk@30625 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 05:58:47 +00:00
Drew Jaynes
c512f1d916 Remove return descriptions from the DocBlocks for add_image_size() and set_post_thumbnail_size() as they don't return anything.
Also document the `$_wp_additional_image_sizes` global, leveraged in `add_image_size()`.

Props stevegrunwell.
Fixes #30511.

Built from https://develop.svn.wordpress.org/trunk@30633


git-svn-id: http://core.svn.wordpress.org/trunk@30623 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 05:49:23 +00:00
Drew Jaynes
b8c612ca1c Ensure inline code is markdown-escaped as such, HTML tags are removed from summaries, and that code snippets in descriptions are properly indented.
Affects DocBlocks for the following core elements:
* Markdown-indent a code snippet in the file header for wp-admin/install-helper.php
* Add markdown formatting and two inline `@see` tags to the description for `translate()`
* Markdown-indent a code snippet in the description for `_n_noop()`
* Remove HTML tags from the summary for `get_media_embedded_in_content()`
* Remove an HTML tag from the summary for `wpview_media_sandbox_styles()`

Props rarst.
See #30473.

Built from https://develop.svn.wordpress.org/trunk@30542


git-svn-id: http://core.svn.wordpress.org/trunk@30531 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-24 05:47:23 +00:00
Sergey Biryukov
8f2842a07e Replace invalid use of ltrim() in attachment_url_to_postid() with substr().
props bradyvercher.
fixes #30346.
Built from https://develop.svn.wordpress.org/trunk@30501


git-svn-id: http://core.svn.wordpress.org/trunk@30490 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-21 06:35:22 +00:00
Andrew Nacin
c2f334bf3c Playlists are video by default. props duck_
Built from https://develop.svn.wordpress.org/trunk@30422


git-svn-id: http://core.svn.wordpress.org/trunk@30417 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-20 13:11:23 +00:00
Dominik Schilling
52f51d65ae Media: Remove another unused string.
props pavelevap.
see #29741.
Built from https://develop.svn.wordpress.org/trunk@30342


git-svn-id: http://core.svn.wordpress.org/trunk@30341 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-14 17:46:22 +00:00
Dominik Schilling
f34d3b1b5a Media: Remove unused string.
props pavelevap.
fixes #29741.
Built from https://develop.svn.wordpress.org/trunk@30341


git-svn-id: http://core.svn.wordpress.org/trunk@30340 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-14 17:31:23 +00:00
Scott Taylor
15c062eb79 In wp_audio|video_shortcode(), make sure that autoplay and loop are booleans. Passing 'false' to them will force them to be active, which is bad.
Fixes #29825.

Built from https://develop.svn.wordpress.org/trunk@30185


git-svn-id: http://core.svn.wordpress.org/trunk@30185 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-03 05:03:21 +00:00
Scott Taylor
cd9bb04981 In gallery_shortcode(), when the link attribute is equal to file, make sure to pass $attr as the 6th (!) argument, not 5th, to wp_get_attachment_link().
Props bradyvercher.
Fixes #27402.

Built from https://develop.svn.wordpress.org/trunk@30161


git-svn-id: http://core.svn.wordpress.org/trunk@30161 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-01 21:47:24 +00:00
Drew Jaynes
66c47f29bb Correct references of @uses $wpdb in core documentation to use @global.
See #30191, [30105].
Fixes #30217.

Built from https://develop.svn.wordpress.org/trunk@30122


git-svn-id: http://core.svn.wordpress.org/trunk@30122 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-31 17:56:22 +00:00
Drew Jaynes
f8657d5890 Remove redundant and erroneous @uses tag from most core inline documentation.
Per our inline documentation standards, no further use of the `@uses` tag is recommended as used and used-by relationships can be derived through other means. This removes most uses of the tag in core documentation, with remaining tags to be converted to `@global` or `@see` as they apply.

Fixes #30191.

Built from https://develop.svn.wordpress.org/trunk@30105


git-svn-id: http://core.svn.wordpress.org/trunk@30105 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-30 01:05:24 +00:00
Scott Taylor
3d8e31fb82 Don't hardcode height for videos - this was a workaround for MediaElement internals causing problems. Responsive videos now work properly and don't cause extra whitespace.
Fixes MediaElement by hand in the interim: https://github.com/johndyer/mediaelement/pull/1337
Video playlists were completely broken by this.

Fixes #30078.


Built from https://develop.svn.wordpress.org/trunk@30082


git-svn-id: http://core.svn.wordpress.org/trunk@30082 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-29 00:47:24 +00:00
Scott Taylor
5d17d2bd28 The gallery shortcode used to accept a SQL chunk for the value of the orderby attribute. The reason? get_posts() used to be called in the shortcode handler with a query-string blob of arguments passed to it. To mitigate breakage, sanitize_sql_orderby() was created in [7592].
`sanitize_sql_orderby()` expects a comma to be present when multiple `orderby` values were passed. The correct syntax for multiple fields is space-delimited. Since [29027], comma-separated values would never be parsed correctly when passed to `WP_Query->parse_orderby()`.

`sanitize_sql_orderby()` is used nowhere else in core, save for the `playlist` shortcode - I only added it there because I was mimic'ing the `gallery` logic. The function call can be removed from both shortcode handlers.
 
See #6476.
Fixes #23873.

Built from https://develop.svn.wordpress.org/trunk@30068


git-svn-id: http://core.svn.wordpress.org/trunk@30068 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-28 20:43:22 +00:00
Gary Pendergast
007ec52958 Add wp_json_encode(), a wrapper for json_encode() that ensures everything is converted to UTF-8.
Change all core calls from `json_encode()` to `wp_json_encode()`.

Fixes #28786.


Built from https://develop.svn.wordpress.org/trunk@30055


git-svn-id: http://core.svn.wordpress.org/trunk@30055 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-28 18:35:19 +00:00
Scott Taylor
72d12b514d Add a 6th (!) attribute to wp_get_attachment_link() to allow aria-describedby to be added to gallery output.
Props joedolson, DrewAPicture, rianrietveld.
Fixes #27402.

Built from https://develop.svn.wordpress.org/trunk@29914


git-svn-id: http://core.svn.wordpress.org/trunk@29667 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-16 04:28:17 +00:00
Sergey Biryukov
45062d7f5c Update @param docs for wp_get_attachment_image().
see #29869.
Built from https://develop.svn.wordpress.org/trunk@29837


git-svn-id: http://core.svn.wordpress.org/trunk@29601 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-05 17:52:15 +00:00
Sergey Biryukov
d769e29279 Pass the requested size to 'wp_get_attachment_image_attributes' filter.
props mattheu.
fixes #29869.
Built from https://develop.svn.wordpress.org/trunk@29836


git-svn-id: http://core.svn.wordpress.org/trunk@29600 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-05 17:50:16 +00:00
Andrew Ozz
7a55ab9164 Media: disable multi-file uploading in iOS 7.x Safari as it prevents uploading of videos. Fixes #29602 for trunk.
Built from https://develop.svn.wordpress.org/trunk@29776


git-svn-id: http://core.svn.wordpress.org/trunk@29548 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-29 00:14:18 +00:00
Sergey Biryukov
10e0807cce Add context for 'Trash' string in media modal.
props pavelevap.
fixes #29739.
Built from https://develop.svn.wordpress.org/trunk@29764


git-svn-id: http://core.svn.wordpress.org/trunk@29536 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-24 13:49:20 +00:00
Scott Taylor
ee9d74dc05 Ordering by RAND():
The shortcode callbacks for `gallery` and `playlist` check for `'RAND' == $atts['order']`, which isn't a valid value for `order`. Remove those checks and update the docs.

In `WP_Query`, if the value of `orderby` is `rand`, `order` is irrelevant and should be unset.

Adds unit tests.

Fixes #29629.

Built from https://develop.svn.wordpress.org/trunk@29760


git-svn-id: http://core.svn.wordpress.org/trunk@29532 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-23 03:52:15 +00:00
Sergey Biryukov
2008fc0c89 Correct 'wp_get_attachment_image_attributes' filter docs.
props tillkruess.
fixes #29701.
Built from https://develop.svn.wordpress.org/trunk@29750


git-svn-id: http://core.svn.wordpress.org/trunk@29522 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-18 12:36:17 +00:00
Andrew Ozz
69e7171f41 Media: revert enabling of multi-file uploading for mobile devices. Currently only iOS Safari supports it but has a bug that prevents uploading of videos. Fixes #29602
Built from https://develop.svn.wordpress.org/trunk@29729


git-svn-id: http://core.svn.wordpress.org/trunk@29503 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-10 22:40:16 +00:00
Sergey Biryukov
0113d3457b Avoid PHP notices in media modal caused by orphaned attachments.
fixes #29566 for trunk.
Built from https://develop.svn.wordpress.org/trunk@29724


git-svn-id: http://core.svn.wordpress.org/trunk@29498 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-09 10:03:14 +00:00
Andrew Nacin
e496cc6e4b Media: Ensure media-views is enqueued and registered before localizing.
fixes #24724.

Built from https://develop.svn.wordpress.org/trunk@29678


git-svn-id: http://core.svn.wordpress.org/trunk@29453 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-02 19:36:16 +00:00
Andrew Ozz
703b625820 Media: add a class to the <script> tag for the JSON encoded playlist data so it can be easily selected in WPPlaylistView. Props SergeyBiryukov, fixes #29383
Built from https://develop.svn.wordpress.org/trunk@29660


git-svn-id: http://core.svn.wordpress.org/trunk@29434 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-01 19:55:18 +00:00
Helen Hou-Sandí
72593add22 Media grid: Don't show a misleading message for an empty library.
This uses the existing string from the list table. We should revisit a better overall experience for the two situations (empty library vs. search with no results) in 4.1.

props voldemortensen.
fixes #29404.

Built from https://develop.svn.wordpress.org/trunk@29655


git-svn-id: http://core.svn.wordpress.org/trunk@29429 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-01 18:39:17 +00:00
Scott Taylor
149346ff6e MCE View sandboxes:
* Use a `MutationObserver` to listen to the `body` class of the parent editor frame.
* In `wpview_media_sandbox_styles()`, only return the MEjs stylesheets.
* In `wp_ajax_parse_media_shortcode()` and `wp_ajax_parse_embed()`, return an object instead of an HTML blob to allow passing `body` and `head` separately	

Props avryl, azaozz.
Fixes #29048.

Built from https://develop.svn.wordpress.org/trunk@29615


git-svn-id: http://core.svn.wordpress.org/trunk@29389 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-26 04:46:15 +00:00
Scott Taylor
d6213d64a5 After [29543], the iframe sandboxes for media need to load Open Sans. Playlists look aggressively bad without it. Adds font styles for the body.
See #29048.

Built from https://develop.svn.wordpress.org/trunk@29564


git-svn-id: http://core.svn.wordpress.org/trunk@29338 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-21 03:36:16 +00:00
Andrew Ozz
53c047263b TinyMCE wpView: add a filter for the stylesheet URLs loaded in the sandbox iframes. See #29048.
Built from https://develop.svn.wordpress.org/trunk@29559


git-svn-id: http://core.svn.wordpress.org/trunk@29334 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-20 21:34:15 +00:00
Andrew Ozz
afdb25bd56 TinyMCE wpView sandbox iframes:
- Make them transparent.
- Don't load tons of unrelated styles that can break them. This could result in minimal styling mismatch to the front-end, but keeps the views working well and looking good.
Props avryl, fixes #29048.
Built from https://develop.svn.wordpress.org/trunk@29543


git-svn-id: http://core.svn.wordpress.org/trunk@29319 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-19 21:53:15 +00:00
Sergey Biryukov
6b3a4e6ddd Media Grid: Use an existing string for posts without a title.
see #24716.
Built from https://develop.svn.wordpress.org/trunk@29493


git-svn-id: http://core.svn.wordpress.org/trunk@29271 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-14 21:41:16 +00:00
Scott Taylor
b0c782bf08 Media Grid, support MEDIA_TRASH: add AYS to bulk actions.
See #29145.

Built from https://develop.svn.wordpress.org/trunk@29492


git-svn-id: http://core.svn.wordpress.org/trunk@29270 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-14 19:08:14 +00:00
Scott Taylor
571111022e Media Grid, support MEDIA_TRASH:
* Add a setting to `_wpMediaViewsL10n.settings`: `mediaTrash`
* In the attachment edit modal, properly toggle between Trash/Untrash
* In `media.view.Attachment`, add a method for `untrashAttachment`
* When creating the grid toolbar, switch the setting order of subviews so that `media.view.DeleteSelectedButton` can listen to the instance of `media.view.AttachmentFilters.All` to update the text in its UI.
* Add a new filter to `media.view.AttachmentFilters.All`, `trash`, when `settings.mediaTrash` is true
* Allow the cached queries in `Query.get()` to be flushed when race conditions exist and collections need to be refreshed. This is currently only being used when `MEDIA_TRASH` is set, to refresh the filtered/mirrored collections related to `all`, `trash`, and any already queried filter.
* Cleanup the bootstrapping of `media.view.MediaFrame.Manage`
* Allow `wp_ajax_query_attachments()` to return items from the trash when `MEDIA_TRASH` is `true`
* Allow `wp_ajax_save_attachment()` to set `post_status` when `MEDIA_TRASH` is `true`. It allows `wp_delete_post()` to be called, which will trash the attachment instead of deleting when the flag is set.

Props koop for the knowledge sharing and thought partnership.
See #29145.

Built from https://develop.svn.wordpress.org/trunk@29490


git-svn-id: http://core.svn.wordpress.org/trunk@29268 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-14 18:31:19 +00:00
Helen Hou-Sandí
82a69241f1 Remove now-unused strings. see #28842.
Built from https://develop.svn.wordpress.org/trunk@29486


git-svn-id: http://core.svn.wordpress.org/trunk@29264 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-14 04:23:16 +00:00
Scott Taylor
9c08ad236a Media Grid: add Bulk Selection mode for deleting attachments.
* Toolbar is sticky when `select` mode is active
* Selection is toggled when clicking an attachment preview
* Unselected attachments fade out, selected fade in.

See #28842.

Built from https://develop.svn.wordpress.org/trunk@29484


git-svn-id: http://core.svn.wordpress.org/trunk@29262 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-13 22:45:15 +00:00
Scott Taylor
1c93f05e2a Upgrade MediaElement to 2.15.0:
* It is required to set `height` on the parent `.wp-video` wrapper for video
* Fixes the play button hover problem in Chrome
* Includes my pull request: https://github.com/johndyer/mediaelement/pull/1273

All changes:
https://github.com/johndyer/mediaelement/compare/2.14.2...master

See #29110.

Built from https://develop.svn.wordpress.org/trunk@29457


git-svn-id: http://core.svn.wordpress.org/trunk@29235 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-09 20:44:17 +00:00
Scott Taylor
28c22db07d Video:
* Don't set height on responsive `<div>` when generating markup
* Move some CSS rules from the style tag to `.wp-video`
* Use Video Details view event delegation instead of click events delegated from `<body>`
* Fix some CSS rule collision in the grid modal

See #29110.

Built from https://develop.svn.wordpress.org/trunk@29456


git-svn-id: http://core.svn.wordpress.org/trunk@29234 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-09 19:39:15 +00:00
Drew Jaynes
647b6d907b Clean up some missing @access tags and other tweaks for 4.0.0-functionality docs.
See #28885.

Built from https://develop.svn.wordpress.org/trunk@29455


git-svn-id: http://core.svn.wordpress.org/trunk@29233 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-09 19:32:16 +00:00
Scott Taylor
8c96874742 Media Grid:
* Use a `media.view.Label` instance in the toolbar for the screen reader text for the "all" dropdown.
* Adjust the spinner's priority.

Fixes #29026.

Built from https://develop.svn.wordpress.org/trunk@29438


git-svn-id: http://core.svn.wordpress.org/trunk@29216 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 21:01:15 +00:00
Scott Taylor
ccd0499d96 Media Grid: use a media.view.Label instance in the toolbar for the screen reader text for Search.
See #29026.

Built from https://develop.svn.wordpress.org/trunk@29437


git-svn-id: http://core.svn.wordpress.org/trunk@29215 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 20:54:15 +00:00
Scott Taylor
8593f7b5e9 Media Grid: add screen reader text in a subview on the toolbar, a media.view.Label instance before media.view.DateFilter.
See #29026.

Built from https://develop.svn.wordpress.org/trunk@29435


git-svn-id: http://core.svn.wordpress.org/trunk@29213 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 20:25:16 +00:00
Scott Taylor
3f17e7040e Create a new Backbone view, media.view.Label, which can be used as a subview in things like toolbars, which need screen reader text.
Make an initial instance of it for the label for Bulk Actions in Media Grid.

See #29026.

Built from https://develop.svn.wordpress.org/trunk@29434


git-svn-id: http://core.svn.wordpress.org/trunk@29212 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 20:09:17 +00:00
Scott Taylor
c5dff42d51 Revert [29428] to avoid errors with Add Media for now.
See #29026.

Built from https://develop.svn.wordpress.org/trunk@29432


git-svn-id: http://core.svn.wordpress.org/trunk@29210 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 19:40:15 +00:00
Scott Taylor
b053fe2e04 Video: use auto instead of actual height for the responsive wrapper in generated markup.
See #29110.

Built from https://develop.svn.wordpress.org/trunk@29430


git-svn-id: http://core.svn.wordpress.org/trunk@29208 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 06:20:15 +00:00
Scott Taylor
b938bfb7d5 MediaElement upgrade: cleanup for generated markup for videos.
See #29110.

Built from https://develop.svn.wordpress.org/trunk@29429


git-svn-id: http://core.svn.wordpress.org/trunk@29207 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 05:53:15 +00:00
Scott Taylor
afb0b3e4ef Media Grid: add screen reader labels with more context to filters and bulk actions. Ditto for list view.
Props afercia.
Fixes #29026.

Built from https://develop.svn.wordpress.org/trunk@29428


git-svn-id: http://core.svn.wordpress.org/trunk@29206 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 05:20:16 +00:00
Scott Taylor
8ed123c97f In media.view.AttachmentFilters.All, make uploaded conditional upon media.view.settings.post.id and include a new filter: unattached.
Drop the `mime-types` filter and related class (which was added for Media Grid) and use `all` instead. 

Props ocean90, wonderboymusic.
Fixes #29065.

Built from https://develop.svn.wordpress.org/trunk@29426


git-svn-id: http://core.svn.wordpress.org/trunk@29204 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-07 04:44:17 +00:00
Scott Taylor
42809dad43 Use proper non-capturing regex syntax for YouTube in wp_video_shortcode().
Props Fab1en.
See [27063].
Fixes #29119.

Built from https://develop.svn.wordpress.org/trunk@29401


git-svn-id: http://core.svn.wordpress.org/trunk@29179 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-06 17:01:17 +00:00
Sergey Biryukov
3f3395a086 Avoid PHP notices in Media Library if an attachment parent post type no longer exists.
Synchronize the 'edit_post' capability check between the list table and the media grid.

fixes #27446.
Built from https://develop.svn.wordpress.org/trunk@29320


git-svn-id: http://core.svn.wordpress.org/trunk@29101 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-29 01:41:16 +00:00
Helen Hou-Sandí
6f44e96d70 Set default values for attachment meta and ID3 data when preparing for JS to avoid errors in rendering templates. props ericmann for the initial patch. fixes #29013.
Built from https://develop.svn.wordpress.org/trunk@29281


git-svn-id: http://core.svn.wordpress.org/trunk@29063 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-24 18:04:18 +00:00
Dominik Schilling
270a57075c Media Grid: Add a date filter.
props ericlewis.
fixes #28895.
Built from https://develop.svn.wordpress.org/trunk@29271


git-svn-id: http://core.svn.wordpress.org/trunk@29053 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-22 20:47:15 +00:00
Helen Hou-Sandí
06f5b5a490 Media Grid:
Instead of a separate bulk selection mode, persistently show a checkbox for each item. Restores the more familiar bulk actions dropdown + action button.

props ericlewis. see #28842.


Built from https://develop.svn.wordpress.org/trunk@29212


git-svn-id: http://core.svn.wordpress.org/trunk@28996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-17 20:42:15 +00:00
Helen Hou-Sandí
b7445ec8a4 Media Grid Attachment Details modal UI improvements:
* Align better visually with the existing media modal and the post image edit modal.
* Add back a link to the full attachment edit screen (post.php).
* Add a title to the modal and move prev/next buttons next to the more-consistent close button.
* Remove mode tabs (metadata vs. image editing) in favor of the Edit Image button.

Still to come: responsive, IE8 testing and targeted CSS (calc() usage), general CSS cleanup.

props ericlewis, helen, melchoyce. see #28844. fixes #28915.

Built from https://develop.svn.wordpress.org/trunk@29204


git-svn-id: http://core.svn.wordpress.org/trunk@28988 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-17 03:55:15 +00:00
Scott Taylor
89d9bbd7f6 Make audio and video URLs/embed handlers work in <iframe>-sandbox'd MCE views.
Introduce:
`get_editor_stylesheets()`
`wp_media_mce_styles()`.

See #28905.

Built from https://develop.svn.wordpress.org/trunk@29176


git-svn-id: http://core.svn.wordpress.org/trunk@28960 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-15 21:51:15 +00:00
Drew Jaynes
f1b19b24f3 Inline documentation cleanup for 4.0 audit.
Added in [28652]:
* Various phpDoc improvements for `wp_embed_handler_youtube()`
* Adds `@see` reference to `wp_embed_handler_youtube()` in 'wp_embed_handler_youtube' filter docs

Added in [29029]:
* s/post_id/post ID in `@return` description for `attachment_url_to_postid()`

See #28885.

Built from https://develop.svn.wordpress.org/trunk@29164


git-svn-id: http://core.svn.wordpress.org/trunk@28948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-14 01:07:15 +00:00
Dominik Schilling
448422f8ae Media Grid improvements:
* Remove fixed elements.
* Adjusts toolbar and search, fixes #28833.
* Add link to Add New button, fixes #28825.
* Add "Edit Metadata" tab to all items, "Edit Image" only for images
* Make strings translatable.
* First pass for help tab.

see #28850.
Built from https://develop.svn.wordpress.org/trunk@29136


git-svn-id: http://core.svn.wordpress.org/trunk@28920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-13 16:16:15 +00:00
Scott Taylor
e3c39d02cf Media Grid, for audio files: show Bitrate in the Edit Attachments modal a la the Edit Post screen.
See #28839.

Built from https://develop.svn.wordpress.org/trunk@29106


git-svn-id: http://core.svn.wordpress.org/trunk@28892 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-11 21:56:16 +00:00
Scott Taylor
57dbc55e6e When setting the poster image for a video shortcode, set that image as the featured image for that attachment (if found) in the background. This AJAX functionality could be used for audio as well.
Introduces `attachment_url_to_postid()` to attempt to turn URLs into post IDs.

Fixes #27891.

Built from https://develop.svn.wordpress.org/trunk@29029


git-svn-id: http://core.svn.wordpress.org/trunk@28817 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-08 17:48:17 +00:00
Drew Jaynes
d4dd02b4ae Remove backticks on $post variables in some short parameter descriptions.
See [28653], [28654].
See #28388.

Built from https://develop.svn.wordpress.org/trunk@28976


git-svn-id: http://core.svn.wordpress.org/trunk@28765 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-03 19:28:14 +00:00
Sergey Biryukov
428a83259e Avoing a PHP warning in media modal if the attached file does not exist.
props kovshenin.
see #24716.
Built from https://develop.svn.wordpress.org/trunk@28959


git-svn-id: http://core.svn.wordpress.org/trunk@28755 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-02 14:37:15 +00:00
Sergey Biryukov
f799048057 Pass $url parameter to wp_embed_defaults() and 'embed_defaults' filter.
props wpsmith, sabreuse, jacobdubail.
fixes #20151.
Built from https://develop.svn.wordpress.org/trunk@28923


git-svn-id: http://core.svn.wordpress.org/trunk@28722 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-30 11:16:15 +00:00
Drew Jaynes
6216aa2331 Add documentation for the default playlist shortcode attributes in wp_playlist_shortcode().
Props taylorde.
Fixes #28678.

Built from https://develop.svn.wordpress.org/trunk@28901


git-svn-id: http://core.svn.wordpress.org/trunk@28700 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-29 21:29:17 +00:00
Andrew Ozz
b9fd9db83b Uploader: enable selecting multiple files on mobile devices (still doesn't work on Android). See #28640.
Built from https://develop.svn.wordpress.org/trunk@28847


git-svn-id: http://core.svn.wordpress.org/trunk@28651 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-26 04:15:15 +00:00
Scott Taylor
2efb8f8507 When wp_oembed_add_provider() or wp_oembed_remove_provider() is called before the plugins_loaded hook has, store the values statically on the WP_oEmbed object and add them just-in-time when the object is instantiated.
This ensures that all plugins have an accurate provider list when `apply_filters( 'oembed_providers', $providers )` is called. 

Props kovshenin.
Fixes #28284.

Built from https://develop.svn.wordpress.org/trunk@28846


git-svn-id: http://core.svn.wordpress.org/trunk@28650 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-26 02:30:15 +00:00
Helen Hou-Sandí
b5ef672c6b Grid view for the media library, first pass. This is alpha; expect imperfection. We will be iterating further.
props ericlewis, shaunandrews, wonderboymusic.
see #24716.

Built from https://develop.svn.wordpress.org/trunk@28682


git-svn-id: http://core.svn.wordpress.org/trunk@28500 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-05 22:01:18 +00:00
Drew Jaynes
b0877f02a4 Make sure $post is properly documented as optional where applicable.
See #28388.

Built from https://develop.svn.wordpress.org/trunk@28653


git-svn-id: http://core.svn.wordpress.org/trunk@28471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-03 03:53:17 +00:00
Scott Taylor
91e6a8c017 Because of YouTube's overwhelming dominance in the online video space, we should help our users who paste bad URLs when possible. It is easy to fix http://youtube.com/embed/acb1233 URLs by turning them into http://youtube.com/watch?v=abc1233 embeds using an embed handler (we already have one to fix Google Video embeds).
We should avoid doing this in almost every other case, but it's YouTube, and it's an easy error for a novice to make.

Fixes #24660.

Built from https://develop.svn.wordpress.org/trunk@28652


git-svn-id: http://core.svn.wordpress.org/trunk@28470 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-02 01:22:15 +00:00
Sergey Biryukov
2b6c8462b3 Avoid a PHP notice in adjacent_image_link() if no images were found.
props nabil_kadimi.
see #28361.
Built from https://develop.svn.wordpress.org/trunk@28584


git-svn-id: http://core.svn.wordpress.org/trunk@28409 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-27 10:55:16 +00:00
Scott Taylor
dd25ef25d9 $count is set in get_post_galleries() and never used, relic from PFUI RIP.
See #27882.

Built from https://develop.svn.wordpress.org/trunk@28550


git-svn-id: http://core.svn.wordpress.org/trunk@28376 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 19:13:14 +00:00
Scott Taylor
abff6bf6cf $gallery_div is set twice in gallery_shortcode() before it is used.
See #27882.

Built from https://develop.svn.wordpress.org/trunk@28549


git-svn-id: http://core.svn.wordpress.org/trunk@28375 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 19:12:14 +00:00
Scott Taylor
e4bc49c244 Because PHP can be configured without --filter, it is not 100% safe to use filter_var(). This is problematic for casting "false" to false, as PHP always casts it to true. FILTER_VALIDATE_BOOLEAN fixes this, but it may not be available.
Add a new function, `wp_validate_boolean()`, to replace `filter_var( $var, FILTER_VALIDATE_BOOLEAN )`.

Fixes #28170.


Built from https://develop.svn.wordpress.org/trunk@28542


git-svn-id: http://core.svn.wordpress.org/trunk@28368 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 18:34:15 +00:00
Scott Taylor
dcc6cbc04f Eliminate use of extract() in gallery_shortcode().
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28414


git-svn-id: http://core.svn.wordpress.org/trunk@28241 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-15 03:41:15 +00:00
Drew Jaynes
08824b6529 Add a complete short description to the get_attached_media filter documentation.
See #26869.

Built from https://develop.svn.wordpress.org/trunk@28377


git-svn-id: http://core.svn.wordpress.org/trunk@28205 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-13 04:21:14 +00:00
Scott Taylor
3bbed6ceac audio, video, and playlist shortcodes:
* Convert all instances of variable variables to array properties
* Eradicate use of `extract()`
* Rename `$atts` to `$html_atts` where collision with new `$atts` (shortcode atts holder) var might occur

See #22400, #27881.


Built from https://develop.svn.wordpress.org/trunk@28342


git-svn-id: http://core.svn.wordpress.org/trunk@28170 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-07 17:36:18 +00:00
John Blackbourn
ab041987d3 Remove some unnecessary abstraction introduced in [28191]. See #27985.
Built from https://develop.svn.wordpress.org/trunk@28194


git-svn-id: http://core.svn.wordpress.org/trunk@28024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-24 11:55:22 +00:00
John Blackbourn
d6e03df3c9 Avoid an expensive attachment counting query on the post editing screen. See #27985, for trunk.
Built from https://develop.svn.wordpress.org/trunk@28191


git-svn-id: http://core.svn.wordpress.org/trunk@28021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-23 22:05:16 +00:00
Scott Taylor
55becc0dfd Refinements for asynchronous rendering in wp.mce.media.PlaylistView:
* Add `visibility: hidden` as an inline style to `<audio>` tags, there is a race with the stylesheet which can get enqueued in the body and loaded in the footer.
* When creating new instances of `MediaElementPlayer`, always push them onto a stack. Lone views can be responsible for multiple instances of the same shortcode on render.
* Rename `wp.media.mixin.unsetPlayer()` to `wp.media.mixin.unsetPlayers()` to reflect the above.
* Call `wp.media.mixin.unsetPlayers()` on the view's `unbind()` method, instead of inline in the `render()` method
* Make sure `WPPlaylistView` is instantiated for each editor instance
* Ensure that the `No Items Found` view state is not rendered when attachments actually do exist.

Props gcorne, wonderboymusic.
See #27899.



Built from https://develop.svn.wordpress.org/trunk@28182


git-svn-id: http://core.svn.wordpress.org/trunk@28013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-22 17:53:16 +00:00
Andrew Nacin
f6387ec25a Properly translate 'Select Poster Image'.
props dimadin.
see #27845, for trunk.

Built from https://develop.svn.wordpress.org/trunk@28168


git-svn-id: http://core.svn.wordpress.org/trunk@27999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-19 18:28:15 +00:00
Andrew Nacin
e3a4c57563 Final about page.
props melchoyce, helen, wonderboymusic, nacin, and the illustrious Michael Pick.
fixes #27713, #27837.

Built from https://develop.svn.wordpress.org/trunk@28150


git-svn-id: http://core.svn.wordpress.org/trunk@27981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-16 17:40:14 +00:00
Andrew Nacin
e8020e91fd Cast wp_count_attachments() before iterating it to avoid a notice when items exist without a mime type.
props bobbingwide.
fixes #27802.

Built from https://develop.svn.wordpress.org/trunk@28139


git-svn-id: http://core.svn.wordpress.org/trunk@27970 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-16 00:00:15 +00:00
Drew Jaynes
da896b7cf3 Inline documentation for hooks in wp-includes/media.php.
Props scottlee for the initial patch. Props kpdesign, DrewAPicture.
Fixes #27718.

Built from https://develop.svn.wordpress.org/trunk@28128


git-svn-id: http://core.svn.wordpress.org/trunk@27959 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-15 01:36:14 +00:00
Andrew Nacin
bfe44f07a3 Plupload: Restore 3.8 handles and filenames to avoid breaking plugins.
fixes #27763.

Built from https://develop.svn.wordpress.org/trunk@28108


git-svn-id: http://core.svn.wordpress.org/trunk@27939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-14 00:07:16 +00:00
Andrew Nacin
e8da400c69 Don't show featured images for image attachments. Remove abstractions for now.
fixes #27673.

Built from https://develop.svn.wordpress.org/trunk@28051


git-svn-id: http://core.svn.wordpress.org/trunk@27881 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 17:40:28 +00:00
Andrew Nacin
4d6fcfdba1 Escape playlist data in templates.
props wonderboymusic.
fixes #27710.

Built from https://develop.svn.wordpress.org/trunk@28050


git-svn-id: http://core.svn.wordpress.org/trunk@27880 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 17:40:14 +00:00
Andrew Nacin
6b41f728d4 Header Images: Add suggested dimensions to the media workflow.
props ehg, gcorne.
see #21785.

Built from https://develop.svn.wordpress.org/trunk@28030


git-svn-id: http://core.svn.wordpress.org/trunk@27860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 01:55:15 +00:00
Scott Taylor
42a66ea424 Make playlist tracks keyboard-accessible.
Fixes #27644.


Built from https://develop.svn.wordpress.org/trunk@28023


git-svn-id: http://core.svn.wordpress.org/trunk@27853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 22:28:16 +00:00
Drew Jaynes
eebf49c180 General PHPDoc improvements in wp-includes/media.php for 3.9 functionality.
See #27700.

Built from https://develop.svn.wordpress.org/trunk@28004


git-svn-id: http://core.svn.wordpress.org/trunk@27834 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 20:38:15 +00:00
Scott Taylor
2c88f6e941 [27640] supported a caption for audio and video shortcodes as part of a UX iteration for the related MCE views. These captions have since be excluded, so the extra code should be removed (it was there for this sole reason).
See #27320.


Built from https://develop.svn.wordpress.org/trunk@27979


git-svn-id: http://core.svn.wordpress.org/trunk@27809 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 06:13:18 +00:00
Scott Taylor
7689cc4a74 When dynamically instantiating MediaElementPlayer instances in JS, preload="metadata" is extremely wonky. preload="none" lets the file play right away.
This has already been addressed for audio|video shortcodes, but also needs to be the case for playlists. When loading a playlist from a DOM cache or via AJAX, and when the sources match those already pre-loaded, the browser will sometimes donkey-punch the HTTP request for the first cached track selected.

Set `preload="none"` for the empty `<audio|video>` tag for playlists.

See commits related to #26779.


Built from https://develop.svn.wordpress.org/trunk@27974


git-svn-id: http://core.svn.wordpress.org/trunk@27804 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-06 21:33:15 +00:00
Scott Taylor
3238664215 Revert the changes made to data.title in playlist Underscore templates in [27869]. {{ data.title }} causes the title to be double-encoded on the front end.
See #27574.


Built from https://develop.svn.wordpress.org/trunk@27960


git-svn-id: http://core.svn.wordpress.org/trunk@27790 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-05 20:06:16 +00:00
Andrew Nacin
5e79b94d81 Header images: Handle cropping failures.
props ehg.
see #21785.

Built from https://develop.svn.wordpress.org/trunk@27946


git-svn-id: http://core.svn.wordpress.org/trunk@27776 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-04 15:48:16 +00:00
Andrew Nacin
079ddec045 Remove <br> elements for HTML5 galleries.
props obenland.
fixes #27637, see #26697.

Built from https://develop.svn.wordpress.org/trunk@27914


git-svn-id: http://core.svn.wordpress.org/trunk@27745 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-02 21:50:14 +00:00
Scott Taylor
55b61b7a70 Re-instantiate the MediaElementPlayer instance when switching mime types in playlists.
Fixes #27608.


Built from https://develop.svn.wordpress.org/trunk@27871


git-svn-id: http://core.svn.wordpress.org/trunk@27702 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-31 15:35:15 +00:00
Scott Taylor
01d2062af3 Cleanup up the display, escaping, and handling of ID3 data for media. Rename wp_get_relevant_id3_keys() to wp_get_attachment_id3_keys().
Props nacin.
See #27574.


Built from https://develop.svn.wordpress.org/trunk@27869


git-svn-id: http://core.svn.wordpress.org/trunk@27700 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-31 05:16:16 +00:00
Scott Taylor
b6ac65f07f Using percentages for playlist font-sizing was ambitious, but fell prey to editor-style.css in the admin. We have switched to using pixels. The editor styles were also forcing MediaElement players to inherit font-family, which was undesirable. And while we're at it, remove the top and bottom border from the playlist's list of tracks, which adds a dash of lovely to the playlist's default styles.
Props nacin for the addition of `&mdash;` in the playlist track list.
Fixes #27600.


Built from https://develop.svn.wordpress.org/trunk@27865


git-svn-id: http://core.svn.wordpress.org/trunk@27696 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 22:12:16 +00:00
Andrew Nacin
c95f232727 Cleanups for audio/video metadata, see [27862].
see #27574.

Built from https://develop.svn.wordpress.org/trunk@27864


git-svn-id: http://core.svn.wordpress.org/trunk@27695 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 21:08:14 +00:00
Scott Taylor
d947a55495 Metadata for audio and video files:
* Make attachment metadata for audio files editable by providing a metabox on the Edit Media page
* Standardize on using the attachment title everywhere
* Label the Caption and Description fields for audio and video appropriately
* Make the playlist Underscore templates more straightforward

See #27574.


Built from https://develop.svn.wordpress.org/trunk@27862


git-svn-id: http://core.svn.wordpress.org/trunk@27693 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 19:28:16 +00:00
Scott Taylor
c3a2635dc8 Return the default mime icon for playlist items that don't have a featured image in wp_prepare_attachment_for_js().
See [27640].


Built from https://develop.svn.wordpress.org/trunk@27813


git-svn-id: http://core.svn.wordpress.org/trunk@27647 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 12:50:14 +00:00
Andrew Nacin
e0e8203af0 Galleries: Avoid doubling up clearing br elements.
props drozdz.
fixes #25537.

Built from https://develop.svn.wordpress.org/trunk@27800


git-svn-id: http://core.svn.wordpress.org/trunk@27635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 02:41:15 +00:00
Scott Taylor
26773541ab Make sure Playlist states that are audio are marked as such with proper localized strings.
See #27554.

Built from https://develop.svn.wordpress.org/trunk@27789


git-svn-id: http://core.svn.wordpress.org/trunk@27625 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 18:37:17 +00:00
Scott Taylor
ff6c0731fa Move counting of attachments for audio/video to the backend, instead of using a reduce function in JS.
See #27554.


Built from https://develop.svn.wordpress.org/trunk@27788


git-svn-id: http://core.svn.wordpress.org/trunk@27624 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 18:16:16 +00:00
Scott Taylor
4f868ad882 There is no more video-playlist shortcode. To use video, it is now [playlist type="video" ....]. Also deleting core playlist styles. The style attribute is still supported, defaulting to light. Our core style support was 4-5 CSS rules.
See #27552. Leaving open for comments and potential bugs.


Built from https://develop.svn.wordpress.org/trunk@27785


git-svn-id: http://core.svn.wordpress.org/trunk@27621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 17:58:15 +00:00
Scott Taylor
3171da9986 Pass the default mime-type icon as the image for a track when a featured image is not selected for an item in a playlist. Image display in general can be toggled on/off in the modal via Playlist Settings.
Fixes #27525.


Built from https://develop.svn.wordpress.org/trunk@27735


git-svn-id: http://core.svn.wordpress.org/trunk@27572 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-26 12:45:15 +00:00
Scott Taylor
eddc48def7 Don't make mce-view a dependency for media-audiovideo. Make media-audiovideo and wp-playlist dependencies for mce-view and only enqueue mce-view in the admin in wp_enqueue_media(). MCE views don't need to be included when media is loaded on the front end.
Fixes #27509.


Built from https://develop.svn.wordpress.org/trunk@27733


git-svn-id: http://core.svn.wordpress.org/trunk@27570 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-26 12:11:14 +00:00
Helen Hou-Sandí
52d2920891 Use Dashicon-style images for mime type icons. Actually moving to Dashicons via the font can be explored later, but has theme/plugin implications and requires too many changes to make it for 3.9. props melchoyce for the icons. fixes #26650.
Built from https://develop.svn.wordpress.org/trunk@27726


git-svn-id: http://core.svn.wordpress.org/trunk@27563 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-25 21:10:15 +00:00
Andrew Nacin
60676ee282 Introduce HTML5 caption support.
When a theme supports HTML5 captions via add_theme_support( 'html5', 'caption' ), figure and figcaption will be used instead of div and p.

There's a bonus. But first, some history: Captions were introduced with an inline style set for the container. This remains, as it is there to force captions to wrap. But this inline style included an extra 10 pixels, which have vexxed theme developers for years. While these pixels were designed to ensure padding around floated images, modern themes handle this with grace. The additional pixels thus feel encumbering.

As the new HTML5 gallery support avoids outputting default gallery styles (again, irking theme developers for years; see #26697), the new HTML5 caption support will also ditch these 10 pixels of unwanted hand-holding. 

The 10 pixels are also removed entirely in the visual editor (and more styles may also disappear here; see #26642), giving themes the power necessary to match the frontend styles.

The filter img_caption_shortcode_width added in 3.7 to work around this madness (see #14380) is skipped entirely when the theme supports HTML5 captions.

props obenland, azaozz.
see #26642. also fixes #9066.

Built from https://develop.svn.wordpress.org/trunk@27668


git-svn-id: http://core.svn.wordpress.org/trunk@27511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-24 02:05:14 +00:00
Andrew Ozz
69b74a75cd Plupload: switch to urlstream upload method when the 'flash' runtime is used in non IE browsers. This ensures cookies are sent but limits the maximum file size that flash can handle.
By default only IE9 and older use flash so this change is mostly for completeness. It would affect only the (extremely rare) cases where a plugin disables the html5 runtime.
Built from https://develop.svn.wordpress.org/trunk@27662


git-svn-id: http://core.svn.wordpress.org/trunk@27505 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-23 23:45:19 +00:00
Scott Taylor
38d1fb971f Turn on thumbnail support for attachment:audio and attachment:video. Change conditionals to check for theme OR post type support when determining whether to turn on the Featured Image UI pieces in the admin.
Fixes #27460.


Built from https://develop.svn.wordpress.org/trunk@27657


git-svn-id: http://core.svn.wordpress.org/trunk@27500 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-23 02:35:14 +00:00
Scott Taylor
410646fc52 General code cleanup and improving video sizing in the admin:
* Abstract the setting of a primary button and its callback in `wp.media.view.MediaFrame.MediaDetails`
* Account for the existence or non-existence of `$content_width` in the TinyMCE views for video
* Make sure video models always have dimensions, even if they are the defaults
* For browsers that are not Firefox, don't use a timeout when setting the `MediaElementPlayer` instance in TinyMCE views

See #27320.


Built from https://develop.svn.wordpress.org/trunk@27655


git-svn-id: http://core.svn.wordpress.org/trunk@27498 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-22 23:26:17 +00:00
Scott Taylor
615dd5331b Unifying media controls and supporting playlists in the editor:
* Support a `caption` attribute for audio and video shortcodes
* In `wp.media.audio|video`, rename `update` to `shortcode` to allow these models to share the same mixins as `wp.media.collection` subclasses
* When sending an audio or video shortcode to the editor, create a default caption if the user hasn't entered one. This currently only displays in the editor, not on the front end. Captions aren't tied to a specific attachment here because external sources are supported.
* In the `wp.mce.media` mixin, in the `edit` method, read `attr` instead of `data` when attempting to parse the encoded shortcode. `data` does not automatically update when the attribute changes. This was a blessing to debug.
* Add `wp.mce.media.PlaylistView` to support playlist views in TinyMCE
* Expose `WPPlaylistView` to global scope and suppress auto-parsing of playlist nodes when in the admin. Allow `WPPlaylistView` to be passed `metadata` on creation instead of requiring a JSON blob to be parsed.
* Remove all of the playlist logic from the `wpgallery` TinyMCE plugin.
* In `wp_prepare_attachment_for_js()` return more data for audio/video so that playlists can have parity in the admin/front end.

See #27320.


Built from https://develop.svn.wordpress.org/trunk@27640


git-svn-id: http://core.svn.wordpress.org/trunk@27483 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 13:33:14 +00:00
Andrew Nacin
30fd56b3dc Only enqueue the image editor in the media modal in the admin.
props gcorne.
see #21811.

Built from https://develop.svn.wordpress.org/trunk@27625


git-svn-id: http://core.svn.wordpress.org/trunk@27468 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 21:16:14 +00:00
Andrew Nacin
deb8779af5 More translation cleanups.
Affects widgets (see #27112), custom headers (see #21785), theme installer (see #27055, reverts [27614]), and some media stuff. Untranslates some complicated strings that need additional study.

see #27453.

Built from https://develop.svn.wordpress.org/trunk@27620


git-svn-id: http://core.svn.wordpress.org/trunk@27463 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 08:18:14 +00:00
Scott Taylor
a17dd704c4 Create a new file, media-audiovideo.js, to house all of the audio and video JS code in core.
UX Changes:
* Don't add a menu item for "Add Audio|Video Source"
* In the Audio|Video Details modal, add buttons and some suggestive text for adding alternate playback sources
* Don't show "Create Audio|Video Playlist" menu items until the user has uploaded audio or video files

See #27437.


Built from https://develop.svn.wordpress.org/trunk@27608


git-svn-id: http://core.svn.wordpress.org/trunk@27451 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 05:31:15 +00:00
Scott Taylor
be70cf26fe Account for preload="metadata" in audio and video shortcodes when multiple versions of the same <source> appear on the page by appending a query arg to "cache-bust" passed sources. The query arg is used to make the sources "unique." They will still be cached by the browser and won't bust the cache on every request.
Fixes #26779.


Built from https://develop.svn.wordpress.org/trunk@27519


git-svn-id: http://core.svn.wordpress.org/trunk@27362 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 03:42:14 +00:00
Scott Taylor
48e05e607c Change string "Create Playlist" to "Create Audio Playlist." Open new tickets for individual issues.
Fixes #26631. 


Built from https://develop.svn.wordpress.org/trunk@27512


git-svn-id: http://core.svn.wordpress.org/trunk@27355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-12 04:40:16 +00:00
Andrew Nacin
a589d9d757 Add header image uploads with cropping to the customizer.
props mcsf, ehg, gcorne.
see #21785.

Built from https://develop.svn.wordpress.org/trunk@27497


git-svn-id: http://core.svn.wordpress.org/trunk@27339 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-11 04:13:16 +00:00
Scott Taylor
d2c0cdc5de Add a filter and document it: playlist_styles. Allows users to roll their own playlist themes.
Props DrewAPicture for the docs.
See #26631.


Built from https://develop.svn.wordpress.org/trunk@27488


git-svn-id: http://core.svn.wordpress.org/trunk@27332 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 23:37:15 +00:00
Scott Taylor
6c3e050724 Playlists:
* Add an action, `wp_playlist_scripts`, where a user can turn off all default script and style loading for playlists and roll their own.
* Move the script and style loading for playlists to a function, `wp_playlist_scripts( $type )`, that hooks into `wp_playlist_scripts`.
* Make the `<noscript>` playlist output an `<ol>`, instead of a list of links with no surrounding markup.

See #26631.


Built from https://develop.svn.wordpress.org/trunk@27486


git-svn-id: http://core.svn.wordpress.org/trunk@27330 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 22:45:14 +00:00
Scott Taylor
f078f3e10e Video editing in the media modal:
* Add a state: `Add Subititles`
* Add `text/vtt` to the list of allowed mime-types, files end in `.vtt`. `.srt` files are served as `text/plain`.
* The content body of a video shortcode should be used for adding `<track>` elements only. This happens dynamically in the modal. If added by hand, they can still be parsed and managed.

See #27016.


Built from https://develop.svn.wordpress.org/trunk@27481


git-svn-id: http://core.svn.wordpress.org/trunk@27325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 10:32:15 +00:00
Scott Taylor
f7af18e1d6 Audio/Video shortcodes in the media modal:
* Make a generic model, `wp.media.model.PostMedia`, which replaces `wp.media.model.PostAudio` and `wp.media.model.PostVideo`
* Make a generic library, `wp.media.controller.MediaLibrary`, which replaces `wp.media.controller.ReplaceVideo` and `wp.media.controller.ReplaceAudio`
* `wp.media.controller.MediaLibrary` is used to create new states that want to load a library filtered by type, making it incredibly simple to add states to frames. See `wp.media.view.MediaFrame.VideoDetails` and `wp.media.view.MediaFrame.AudioDetails`.

UX changes:

* Add the ability to manage HTML5 fallbacks - add additional `<source>`s or remove specific `<source>`s
* In the Video Details state, add the ability to select a poster image

See #27016.


Built from https://develop.svn.wordpress.org/trunk@27478


git-svn-id: http://core.svn.wordpress.org/trunk@27322 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 05:25:15 +00:00
Scott Taylor
dc00fc7e7f Audio/Video shortcodes in the media modal:
* Add `embedMimes` to `_wpMediaViewsL10n`
* Use `escape` instead of `interpolate` when setting attributes in Underscore templates
* When creating the `<audio>` and `<video>` tags dynamically, set inner `<source>` nodes instead of the `src` attribute and properly set the mime-type per source as the `type` attribute. This is also drastically reduces the amount of code used to generate the tags.

See #27016.


Built from https://develop.svn.wordpress.org/trunk@27476


git-svn-id: http://core.svn.wordpress.org/trunk@27320 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 01:01:14 +00:00
Andrew Nacin
fabb6d4898 Allow $crop in add_image_size() to receive crop anchors (top, left, right, bottom, center).
This also applies to set_post_thumbnail_size() and image_resize_dimensions().

props bradt, wonderboymusic, DH-Shredder.
fixes #19393.

Built from https://develop.svn.wordpress.org/trunk@27472


git-svn-id: http://core.svn.wordpress.org/trunk@27317 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-08 06:14:15 +00:00
Helen Hou-Sandí
4bb7e03548 At long last, a first pass at bringing the image editor into the media modal. props gcorne, DH-Shredder, tomauger. see #21811.
Built from https://develop.svn.wordpress.org/trunk@27445


git-svn-id: http://core.svn.wordpress.org/trunk@27292 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 22:55:14 +00:00
Scott Taylor
ff8844deae Add TinyMCE placeholders for audio and video shortcodes.
* Add `wp.media.mixin`.
* Add `wp.media.audio` and `wp.media.video`.
* Add `wp.media.model.PostAudio` and `wp.media.model.PostVideo`
* Add `wp.media.controller.AudioDetails` and `wp.media.controller.VideoDetails`.
* Add `wp.media.controller.ReplaceAudio` and `wp.media.controller.ReplaceVideo`.
* Add `wp.media.view.MediaFrame.AudioDetails` and `wp.media.view.MediaFrame.VideoDetails`.
* Add `wp.media.view.AudioDetails` and `wp.media.view.VideoDetails`.
* Update the `wpgallery` TinyMCE plugin.
* Display audio and video players in the media modal when shortcode is clicked.
* Provide a UI to edit shortcode attributes in the media modal.
* Provide a UI to replace the `src` media file in an `audio` or `video` shortcode.

See #27016.


Built from https://develop.svn.wordpress.org/trunk@27411


git-svn-id: http://core.svn.wordpress.org/trunk@27258 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 15:06:14 +00:00
Helen Hou-Sandí
886a8e9549 Add a class attribute to the caption shortcode to allow for additional classes on the caption container. props rhyswynne, mcadwell. fixes #25295.
Built from https://develop.svn.wordpress.org/trunk@27404


git-svn-id: http://core.svn.wordpress.org/trunk@27251 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 04:54:15 +00:00
Andrew Nacin
0422c70fdb Rename maybe_regenerate_attachment_metadata() to wp_maybe_generate_attachment_metadata(), to match wp_generate_attachment_metadata().
fixes #26825.

Built from https://develop.svn.wordpress.org/trunk@27397


git-svn-id: http://core.svn.wordpress.org/trunk@27245 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 20:07:14 +00:00
Andrew Nacin
978e394248 Do not output default gallery styles if the theme has opted into HTML5 galleries.
fixes #27045. see #26697.

Built from https://develop.svn.wordpress.org/trunk@27396


git-svn-id: http://core.svn.wordpress.org/trunk@27244 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 18:53:13 +00:00
Scott Taylor
e92770ba93 * Videos should always render at the same aspect ratio.
* Don't force a pseudo-mime-type for `.m4v` files
* Uniformly adapt to `$content_width` when setting video dimensions on the front end
* Add the `height` attribute to the initial `<video>` in the video playlist JS template
* Add some defensive/responsive CSS for a/v on the Edit Media page

See #27243.


Built from https://develop.svn.wordpress.org/trunk@27328


git-svn-id: http://core.svn.wordpress.org/trunk@27180 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-28 21:28:14 +00:00
Scott Taylor
db1a8785b5 Some playlist cleanup:
* Check properties against the `window` object when using `_.isUndefined()` on globals
* Fix a typo for `$safe_type` introduced in [27311]

See #26631.


Built from https://develop.svn.wordpress.org/trunk@27320


git-svn-id: http://core.svn.wordpress.org/trunk@27172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 21:38:17 +00:00
Andrew Ozz
21b74a037d Remove debugging cruft, see #25663
Built from https://develop.svn.wordpress.org/trunk@27318


git-svn-id: http://core.svn.wordpress.org/trunk@27170 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 20:15:16 +00:00
Andrew Ozz
d896fa2487 Upgrade Plupload to 2.1.1, props kovshenin, see #25663
Built from https://develop.svn.wordpress.org/trunk@27316


git-svn-id: http://core.svn.wordpress.org/trunk@27168 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 20:01:16 +00:00
Scott Taylor
f931929905 In the tracklist for playlist, fall back to title if there is no caption.
Props bassgang.
See #26631.


Built from https://develop.svn.wordpress.org/trunk@27312


git-svn-id: http://core.svn.wordpress.org/trunk@27165 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 15:22:13 +00:00
Scott Taylor
7d57ca6c2c Add some security hardening to passed playlist attributes.
Props xknown.
See #26631.


Built from https://develop.svn.wordpress.org/trunk@27311


git-svn-id: http://core.svn.wordpress.org/trunk@27164 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 15:20:14 +00:00
Andrew Nacin
e8819fc636 Introduce HTML5 gallery support.
When a theme supports HTML5 galleries via add_theme_support( 'html5', 'gallery' ), figure and figcaption will be used instead of definition list markup.

props obenland.
fixes #26697.

Built from https://develop.svn.wordpress.org/trunk@27302


git-svn-id: http://core.svn.wordpress.org/trunk@27155 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-26 22:20:31 +00:00
Scott Taylor
c4cd842c29 Make sure data.meta always exists when rendering tracklists. Use $theme_width when rendering media tag in playlist template instead of recalculating.
Props helen.


Built from https://develop.svn.wordpress.org/trunk@27269


git-svn-id: http://core.svn.wordpress.org/trunk@27125 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 19:30:14 +00:00
Scott Taylor
d5c0574c94 Get the proper image size for an item's thumb in playlist JSON.
See #26631.


Built from https://develop.svn.wordpress.org/trunk@27245


git-svn-id: http://core.svn.wordpress.org/trunk@27102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 21:10:12 +00:00
Scott Taylor
d393e38624 Supply mime-type instead of extension for an item's type property in playlist JSON.
See #26631.


Built from https://develop.svn.wordpress.org/trunk@27244


git-svn-id: http://core.svn.wordpress.org/trunk@27101 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 21:05:16 +00:00
Drew Jaynes
de43247d4c Inline documentation improvements for wp_get_playlist().
* Adds a missing `@param` description in the PHPDoc.
* Adds hook documentation for the `post_playlist` filter.
* Other comment cleanup.

Built from https://develop.svn.wordpress.org/trunk@27240


git-svn-id: http://core.svn.wordpress.org/trunk@27097 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 19:42:13 +00:00
Scott Taylor
943f295d2e Add core support for Playlists and Video Playlists.
* Playlists operate like galleries in the admin. 
* Provide default UI and JS support in themes using MediaElement and Backbone. 
* The shortcodes are clickable, editable, and configurable using the media modal. 
* Playlists support images for each item, whether or not the current theme supports images for `attachment:audio` and `attachment:video`
* Playlists respond to `$content_width` and resize videos accordingly.
* All playlist data is included inline, using a script tag with `type="application/json"`, allowing anyone to unenqueue the WP playlist JS and roll their own.
* Playlist styles are minimal and work out of the box in the last 5 default themes. They inherit and adapt to the current theme's font styles, and their rules are easily overrideable.

See #26631.


Built from https://develop.svn.wordpress.org/trunk@27239


git-svn-id: http://core.svn.wordpress.org/trunk@27096 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 18:08:16 +00:00
Scott Taylor
7ff83d46aa Allow pseudo post types attachment:audio and attachment:video to get the media modal on Edit Media when they support featured images.
Introduces `post_supports_thumbnails( $post )` and `theme_supports_thumbnails( $post )` to cut down on duplicated code everytime this needs to be checked. There will be more cases forthcoming.

See #26631.


Built from https://develop.svn.wordpress.org/trunk@27209


git-svn-id: http://core.svn.wordpress.org/trunk@27066 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-20 17:50:13 +00:00
Andrew Nacin
65f4497766 has_image_size()'s parameter should be required. see [27139], see #26951.
Built from https://develop.svn.wordpress.org/trunk@27140


git-svn-id: http://core.svn.wordpress.org/trunk@27007 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 23:53:12 +00:00
Drew Jaynes
127907a85b Inline documentation tweaks for has_image_size() and remove_image_size().
See #26951.

Built from https://develop.svn.wordpress.org/trunk@27139


git-svn-id: http://core.svn.wordpress.org/trunk@27006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 22:55:11 +00:00
Andrew Nacin
53867f3081 Add remove_image_size() and tests for it and has_image_size(), added in [27128].
props mordauk, markoheijnen.
fixes #26768. see #26951.

Built from https://develop.svn.wordpress.org/trunk@27129


git-svn-id: http://core.svn.wordpress.org/trunk@26996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 00:41:13 +00:00
Scott Taylor
2610e6d4ff Introduce has_image_size( $name ), a utility function that helps avoid loading the $_wp_additional_image_sizes global.
Props mordauk.
Fixes #26951.


Built from https://develop.svn.wordpress.org/trunk@27128


git-svn-id: http://core.svn.wordpress.org/trunk@26995 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 00:20:13 +00:00
Scott Taylor
03dda3b273 Introduce maybe_regenerate_attachment_metadata( $attachment ). On the Edit Media screen, call it for Audio and Video files.
The functions checks if the item is lacking metadata altogether. If a video or audio file was uploaded prior to 3.6, it does not have any metadata. This tries to fix it. Implements locking via a transient to protect against this running in parallel with another request.

This is the minimum viable product for #26825, but leaving the ticket open unless this function needs to be called in other places.

See #26825.


Built from https://develop.svn.wordpress.org/trunk@27127


git-svn-id: http://core.svn.wordpress.org/trunk@26994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-07 22:41:12 +00:00
Scott Taylor
228fc639b9 When a video shortcode has content in its body, append it as inner HTML in the resulting <video>.
Reverts [27096].
Fixes #26628.
See #27016.


Built from https://develop.svn.wordpress.org/trunk@27097


git-svn-id: http://core.svn.wordpress.org/trunk@26968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-05 01:43:12 +00:00
Scott Taylor
84911b9707 Let the video shortcode accept a YouTube URL as the value of its src attribute, as MediaElement.js supports Chromeless YouTube videos by using a pseudo-mime-type video/youtube.
HTTP and HTTPS www, non-www, and short url fronts are supported:
http://www.youtube.com/watch 
https://www.youtube.com/watch
http://youtube.com/watch
https://youtube.com/watch
http://youtu.be
https://youtu.be

Fixes #24764.


Built from https://develop.svn.wordpress.org/trunk@27063


git-svn-id: http://core.svn.wordpress.org/trunk@26936 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-31 18:59:13 +00:00