Sergey Biryukov
a879bcb1c6
Code Modernization: Remove a workaround for `IMAGETYPE_ICO` in `file_is_displayable_image()`.
...
The `IMAGETYPE_ICO` constant was introduced in PHP 5.3, so no longer needs a workaround.
Props jrf.
See #48074 .
Built from https://develop.svn.wordpress.org/trunk@46217
git-svn-id: http://core.svn.wordpress.org/trunk@46029 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-09-20 22:18:59 +00:00
Andrew Ozz
29ea4c6a4c
Media/Upload: rotate images on upload according to EXIF Orientation.
...
Props msaggiorato, wpdavis, markoheijnen, dhuyvetter, msaggiorato, n7studios, triplejumper12, pbiron, mikeschroder, joemcgill, azaozz.
Fixes #14459 .
Built from https://develop.svn.wordpress.org/trunk@46202
git-svn-id: http://core.svn.wordpress.org/trunk@46014 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-09-20 18:21:57 +00:00
Andrew Ozz
dc8349ba0a
Media: Add handling for "BIG" images. When the users upload a big image, typically a photo, scale it down to make it suitable for web use. Then use the scaled image as the "full" size, and keep the originally uploaded image for creating high quality sub-sizes in the future and in case the users want to download it later.
...
Introduces `wp_get_original_image_path()` that retrieves the path to the originally uploaded image in all cases, and `big_image_size_threshold` filter to set the pixel value above which images will be scaled. The same value is used as max-width and max-height when scaling.
See #47873 .
Built from https://develop.svn.wordpress.org/trunk@46076
git-svn-id: http://core.svn.wordpress.org/trunk@45888 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-09-07 01:07:55 +00:00
Andrew Ozz
e313498193
Uploads: After an image is uploaded and PHP times out or runs out of memory during post-processing (the server response is HTTP 500 error), try to resize it three more times. Then, if all attempts fail, do a cleanup of any sub-sizes that may have been created and show an error message asking the user to scale the image and upload it again.
...
See #47872 .
Built from https://develop.svn.wordpress.org/trunk@45934
git-svn-id: http://core.svn.wordpress.org/trunk@45745 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-09-04 01:11:54 +00:00
Sergey Biryukov
3d12c4b6d8
Docs: Fix typo in `_wp_make_subsizes()` DocBlock.
...
Props itowhid06.
Fixes #47913 . See #40439 .
Built from https://develop.svn.wordpress.org/trunk@45871
git-svn-id: http://core.svn.wordpress.org/trunk@45682 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-08-21 16:23:56 +00:00
Andrew Ozz
5eba5381e6
Media: Sort the new sizes array by priority when creating image sub-sizes.
...
See #40439 .
Built from https://develop.svn.wordpress.org/trunk@45645
git-svn-id: http://core.svn.wordpress.org/trunk@45456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-07-16 21:48:56 +00:00
Gary Pendergast
abcbee954f
Coding Standards: Fix instances of `WordPress.PHP.NoSilencedErrors.Discouraged`.
...
Noteable changes:
- The `magic_quotes_runtime` and `magic_quotes_sybase` settings were removed in PHP 5.4, so no longer need to be set.
- Some functions that use external libraries can generate errors that can't be tested for, so are globally allowed to silence errors.
- Quite a few functions would cause errors if `safe_mode` was set. This setting was removed in PHP 5.4.
- Only a handful of `header()` calls needed corresponding `headers_sent()` checks for unit tests to pass, but more may need to be added as the nightlies builds are tested.
See #46732 .
Built from https://develop.svn.wordpress.org/trunk@45611
git-svn-id: http://core.svn.wordpress.org/trunk@45422 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-07-09 05:45:58 +00:00
Andrew Ozz
88ffa41ee3
Media: Ignore errors coming from `image_resize_dimensions()` when creating sub-sizes (for now). It returns `false` when the requested size is larger than the original image and should be skipped. This triggers new `WP_Error` in `WP_Image_Editor::resize()`.
...
See #40439 .
Built from https://develop.svn.wordpress.org/trunk@45543
git-svn-id: http://core.svn.wordpress.org/trunk@45354 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-06-16 01:33:51 +00:00
Andrew Ozz
da7839dc45
After [45538]: fix another WPCS "strict comparison" fix.
...
Props birgire.
See #40439 .
Built from https://develop.svn.wordpress.org/trunk@45540
git-svn-id: http://core.svn.wordpress.org/trunk@45351 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-06-15 16:24:52 +00:00
Andrew Ozz
5987caeecc
After [45538]: fix a WPCS fix and make couple of var names consistent.
...
See #40439 .
Built from https://develop.svn.wordpress.org/trunk@45539
git-svn-id: http://core.svn.wordpress.org/trunk@45350 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-06-15 01:32:53 +00:00
Andrew Ozz
05302bd054
Save progress of intermediate image creation after upload. First run.
...
- Introduces `wp_get_missing_image_subsizes()` and `wp_update_image_subsizes()` to generate image sub-sizes that are missing or were not created after the upload.
- Adds a way to display errors that happened while creating sub-sizes.
- Introduces `wp_create_image_subsizes()` intended for use after an image was uploaded. It saves/updates the image metadata immediately after each sub-size is created. This fixes the (long standing) problem when some of the sub-size image files were created but there was a timeout or an error and the metadata was not saved. Until now such uploads were considered "failed" which usually resulted in the user trying to upload the same image again, creating even more "orphan" image files.
Note that the patch also includes some unrelated WPCS fixes.
Props mikeschroder, azaozz.
See #40439 .
Built from https://develop.svn.wordpress.org/trunk@45538
git-svn-id: http://core.svn.wordpress.org/trunk@45349 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-06-15 01:02:52 +00:00
Aaron Jorbin
71cf332e65
Replace usages of basename() with wp_basename() in order to support multibyte filenames
...
This is focused on the pieces of code that touch media files and the tests that support them. `basename` isn't multibyte compatible out of the box. See http://php.net/basename and https://bugs.php.net/bug.php?id=62119 .
See #43170 .
Props Viper007Bond.
Built from https://develop.svn.wordpress.org/trunk@44785
git-svn-id: http://core.svn.wordpress.org/trunk@44617 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-03-01 20:58:52 +00:00
Gary Pendergast
4f861b9548
Coding Standards: Fix the `Squiz.ControlStructures.ControlSignature.SpaceAfterCloseBrace` violations.
...
See #45934 .
Built from https://develop.svn.wordpress.org/trunk@44566
git-svn-id: http://core.svn.wordpress.org/trunk@44397 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-01-11 06:40:50 +00:00
desrosj
f29dfe7b6d
Docs: Update `since` tag for new `intermediate_image_sizes_advanced` filter parameter.
...
Originally added in [42407].
Fixes #42745 .
Built from https://develop.svn.wordpress.org/trunk@44385
git-svn-id: http://core.svn.wordpress.org/trunk@44215 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-01-03 17:47:49 +00:00
Gary Pendergast
56c162fbc9
Coding Standards: Upgrade WPCS to 1.0.0
...
WPCS 1.0.0 includes a bunch of new auto-fixers, which drops the number of coding standards issues across WordPress significantly. Prior to running the auto-fixers, there were 15,312 issues detected. With this commit, we now drop to 4,769 issues.
This change includes three notable additions:
- Multiline function calls must now put each parameter on a new line.
- Auto-formatting files is now part of the `grunt precommit` script.
- Auto-fixable coding standards issues will now cause Travis failures.
Fixes #44600 .
Built from https://develop.svn.wordpress.org/trunk@43571
git-svn-id: http://core.svn.wordpress.org/trunk@43400 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-08-17 01:51:36 +00:00
Sergey Biryukov
ff314fd156
Media: Pass EXIF data to the `wp_read_image_metadata` filter.
...
Props desrosj.
Fixes #43624 .
Built from https://develop.svn.wordpress.org/trunk@42879
git-svn-id: http://core.svn.wordpress.org/trunk@42709 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-03-25 20:45:29 +00:00
Sergey Biryukov
079cfd60a9
Media: In `wp_read_image_metadata()`, rename `$sourceImageType` variable to `$image_type` to match coding standards.
...
See #43624 .
Built from https://develop.svn.wordpress.org/trunk@42878
git-svn-id: http://core.svn.wordpress.org/trunk@42708 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-03-25 20:41:29 +00:00
Mike Schroder
51b0a3cd28
Media: Correctly allow changing PDF thumbnail crop value.
...
Corrects logic that keeping plugins from setting crop value of intermediate image sizes for rendered PDFs.
Adds test.
Props leemon, SergeyBiryukov, chetan200891, birgire.
Fixes #43226 .
Built from https://develop.svn.wordpress.org/trunk@42792
git-svn-id: http://core.svn.wordpress.org/trunk@42622 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-03-07 01:19:31 +00:00
Sergey Biryukov
5596017878
Media: Recognize `.ico` files as displayable images on PHP 5.3+ and allow attachment meta data to be generated for them.
...
Props remyvv, Guido07111975.
Fixes #43458 .
Built from https://develop.svn.wordpress.org/trunk@42780
git-svn-id: http://core.svn.wordpress.org/trunk@42610 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-03-05 01:03:31 +00:00
Sergey Biryukov
35653f0432
Media: Bring consistency to `getimagesize()` error suppression.
...
Props chasewg, joemcgill, jeremyfelt.
Fixes #42480 .
Built from https://develop.svn.wordpress.org/trunk@42449
git-svn-id: http://core.svn.wordpress.org/trunk@42279 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-01-15 19:44:47 +00:00
John Blackbourn
cb53982d1f
Media: Pass the attachment ID to the `intermediate_image_sizes_advanced` filter.
...
Props drywallbmb, robbie505
Fixes 42745
Built from https://develop.svn.wordpress.org/trunk@42407
git-svn-id: http://core.svn.wordpress.org/trunk@42236 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-12-16 13:47:47 +00:00
Gary Pendergast
aaf99e6913
Code is Poetry.
...
WordPress' code just... wasn't.
This is now dealt with.
Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS.
Fixes #41057 .
Built from https://develop.svn.wordpress.org/trunk@42343
git-svn-id: http://core.svn.wordpress.org/trunk@42172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-11-30 23:11:00 +00:00
Gary Pendergast
c90cfa3b50
General: Fix some precision alignment formatting warnings.
...
The WPCS `WordPress.WhiteSpace.PrecisionAlignment` rule throws warnings for a bunch of code that will likely cause issues for `wpcbf`. Fixing these manually beforehand gives us better auto-fixed results later.
See #41057 .
Built from https://develop.svn.wordpress.org/trunk@42228
git-svn-id: http://core.svn.wordpress.org/trunk@42057 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-11-26 23:57:55 +00:00
John Blackbourn
d510413811
Docs: Fix various filter documentation.
...
See #38462 , #41017
Built from https://develop.svn.wordpress.org/trunk@41215
git-svn-id: http://core.svn.wordpress.org/trunk@41055 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-08-03 14:34:44 +00:00
Joe McGill
d6bec79fe7
Media: Keep PDF previews from overwriting files.
...
Since support for PDF previews were added in [38949], it's possible
that the generated image file could overwrite an existing image file
with the same name. This uses `wp_unique_filename()` to avoid this
issue and adds a '-pdf' identifier on the end of filenames.
Props gitlost, derosj, mikeschroder, joemcgill.
Fixes #39875 . See #31050 .
Built from https://develop.svn.wordpress.org/trunk@40130
git-svn-id: http://core.svn.wordpress.org/trunk@40067 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-27 15:39:47 +00:00
Joe McGill
efb191c2ed
Media: Allow PDF fallbacks filter to process custom sizes.
...
This fixes an oversight in [39246], which added a hook for filtering
the array of sizes used for PDF thumbnails, but failed to provide a way
for sizes added through `add_image_size()` to be processed.
Props gitlost.
Fixes #39231 . See #38594 .
Built from https://develop.svn.wordpress.org/trunk@39617
git-svn-id: http://core.svn.wordpress.org/trunk@39557 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 20:30:42 +00:00
Joe McGill
36ac7287b0
Media: Make PDF preview sizes filterable.
...
This adds a new filter, `fallback_intermediate_image_sizes`, which
can be used to modify the array of image sizes created for previewing
PDFs in the media library and checks for the existence of sizes before
processing any image representations of a PDF.
Fixes #38594 .
Built from https://develop.svn.wordpress.org/trunk@39246
git-svn-id: http://core.svn.wordpress.org/trunk@39186 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-15 13:26:30 +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
Scott Taylor
6f9f3b0c56
Media: remove `function_exists()` call for `ini_get()` in `_load_image_to_edit_path()`.
...
Props dd32.
Fixes #37681 .
Built from https://develop.svn.wordpress.org/trunk@38333
git-svn-id: http://core.svn.wordpress.org/trunk@38274 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-23 14:24:30 +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
Drew Jaynes
c3055cc190
Docs: Standardize hook docs in wp-admin/* to use third-person singular verbs per the inline documentation standards for PHP.
...
See #36913 .
Built from https://develop.svn.wordpress.org/trunk@37488
git-svn-id: http://core.svn.wordpress.org/trunk@37456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:01:30 +00:00
Dominik Schilling
d8f3325c14
Docs: Correct grammar when referring to "a URL" vs "an URL" in several places.
...
Fixes #36218 .
Built from https://develop.svn.wordpress.org/trunk@36970
git-svn-id: http://core.svn.wordpress.org/trunk@36938 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-12 12:39:27 +00:00
Dominik Schilling
cd892b86b4
Media: In `wp_read_image_metadata()` make sure that IPTC keywords are UTF8 encoded.
...
Prevents missing `_wp_attachment_metadata` when an image contains keywords with latin extended characters.
Fixes #35316 .
Built from https://develop.svn.wordpress.org/trunk@36429
git-svn-id: http://core.svn.wordpress.org/trunk@36396 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-01 14:53:27 +00:00
Drew Jaynes
79705d5cc1
Docs: Fix a typo in the 4.4.0 changlog entry in the `intermediate_image_sizes_advanced` hook doc.
...
Props morganestes.
Fixes #35190 .
Built from https://develop.svn.wordpress.org/trunk@36054
git-svn-id: http://core.svn.wordpress.org/trunk@36019 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-21 22:24:27 +00:00
Sergey Biryukov
7ad65267b6
Media: Avoid a PHP warning in `wp_generate_attachment_metadata()` if `$metadata` is not an array.
...
This was previously fixed in [25968], but accidentally reverted in [32545].
Props skithund.
Fixes #34599 .
Built from https://develop.svn.wordpress.org/trunk@35554
git-svn-id: http://core.svn.wordpress.org/trunk@35518 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-06 09:25:26 +00:00
Scott Taylor
aa8c76258a
After [34374], ensure that `$iptc` is defined.
...
See #33772 .
Built from https://develop.svn.wordpress.org/trunk@34378
git-svn-id: http://core.svn.wordpress.org/trunk@34342 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-22 04:49:24 +00:00
Scott Taylor
1d513fe737
Media: In `wp_read_image_metadata()`, include IPTC Keywords when available in `$meta`.
...
Adds unit test.
Props swissspidy, dbru, SteveHoneyNZ.
Fixes #33772 .
Built from https://develop.svn.wordpress.org/trunk@34374
git-svn-id: http://core.svn.wordpress.org/trunk@34338 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-22 04:19:24 +00:00
Scott Taylor
8cd584e6ed
In `wp_generate_attachment_metadata()`, also pass `$metadata` to the `intermediate_image_sizes_advanced` filter.
...
Props amereservant, wonderboymusic.
Fixes #23401 .
Built from https://develop.svn.wordpress.org/trunk@34007
git-svn-id: http://core.svn.wordpress.org/trunk@33976 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-10 18:04:24 +00:00
Scott Taylor
b56b9b3e5c
Add `@global` annotations for `wp-admin/*`.
...
See #32444 .
Built from https://develop.svn.wordpress.org/trunk@32642
git-svn-id: http://core.svn.wordpress.org/trunk@32612 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-28 21:41:30 +00:00
Scott Taylor
af7a017f46
When calling `unset()`, it is unnecessary to immediately precede it with a call to `isset()`.
...
See #32444 .
Built from https://develop.svn.wordpress.org/trunk@32545
git-svn-id: http://core.svn.wordpress.org/trunk@32515 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-22 05:47:25 +00:00
Sergey Biryukov
19f1d4f402
EXIF/IPTC captions should populate Caption (`post_excerpt`) on upload, not Description (`post_content`).
...
Make sure the caption is always set if found. Previously, if the caption was less than 80 characters, only the Title field would be set.
props beaulebens, ericlewis, bendoh, SergeyBiryukov.
fixes #22768 .
Built from https://develop.svn.wordpress.org/trunk@31694
git-svn-id: http://core.svn.wordpress.org/trunk@31675 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-10 05:07:28 +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
Sergey Biryukov
19a43125cd
Don't try to read a non-existent Exif:Title tag in `wp_read_image_metadata()`, as it's not a part of the Exif standard.
...
props tyxla.
fixes #31043 .
Built from https://develop.svn.wordpress.org/trunk@31462
git-svn-id: http://core.svn.wordpress.org/trunk@31443 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-14 09:14:28 +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
Andrew Nacin
58dfcb9bb0
Validate image data.
...
Built from https://develop.svn.wordpress.org/trunk@30458
git-svn-id: http://core.svn.wordpress.org/trunk@30449 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-20 15:25:22 +00:00
Scott Taylor
2ed316e16d
Add exif `orientation` to data extracted in `wp_read_image_metadata()`.
...
Props shanebp.
Fixes 28916.
Built from https://develop.svn.wordpress.org/trunk@29291
git-svn-id: http://core.svn.wordpress.org/trunk@29073 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-24 22:14:16 +00:00
Drew Jaynes
097dc8ee15
Fix syntax for single- and multi-line comments in wp-admin-directory files.
...
See #28931 .
Built from https://develop.svn.wordpress.org/trunk@29206
git-svn-id: http://core.svn.wordpress.org/trunk@28990 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-17 09:14:16 +00:00
Sergey Biryukov
8b272f4379
Remove mbstring_binary_safe_strlen(). Use mbstring_binary_safe_encoding() and reset_mbstring_encoding() directly.
...
fixes #28162 .
Built from https://develop.svn.wordpress.org/trunk@28808
git-svn-id: http://core.svn.wordpress.org/trunk@28617 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-23 22:21:15 +00:00
Sergey Biryukov
9ceb642b2a
Introduce a binary-safe wrapper for strlen() and use it in seems_utf8(), utf8_uri_encode(), and wp_read_image_metadata().
...
Use binary-safe POMO_Reader::strlen() in MO::export_to_file_handle().
fixes #28162 .
Built from https://develop.svn.wordpress.org/trunk@28806
git-svn-id: http://core.svn.wordpress.org/trunk@28615 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-23 14:48:14 +00:00
Sergey Biryukov
84422e6d7d
Add BMP to the list of displayable image types.
...
props ericlewis.
fixes #26808 .
Built from https://develop.svn.wordpress.org/trunk@28589
git-svn-id: http://core.svn.wordpress.org/trunk@28414 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-27 13:25:14 +00:00