Commit Graph

86 Commits

Author SHA1 Message Date
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
Scott Taylor
88b96dc036 In wp_read_image_metadata(), the values from exif_read_data() should only override values from iptcparse() that are empty.
Props SergeyBiryukov.
Fixes #23706.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28195 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-11 05:54:15 +00:00
Drew Jaynes
181fe84d47 Align parameters in the hook docs for the attachment_thumbnail_args filter.
See #27700.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27827 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 20:10:16 +00:00
Scott Taylor
7eb24edf4e In wp_generate_attachment_metadata(), when an audio or video files contains upload-able image bits in its ID3 tags, only upload it if the image has not already been uploaded. Determine this by checking for a _cover_hash value in post meta that matches the md5 representation of the bits.
This prevents uploading an album of 10 songs and subsequently uploading 10 copies of the same album cover.

Props GregLone for the new filter/filter docs: `'attachment_thumbnail_args'`.
Fixes #27573.
 

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


git-svn-id: http://core.svn.wordpress.org/trunk@27694 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 20:54:15 +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
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
Drew Jaynes
61538d3f5e Inline documentation for hooks in wp-admin/includes/image.php.
Props theorboman, kpdesign.
Fixes #25832.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27059 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-20 06:27:13 +00:00
Andrew Nacin
d0cfa40983 Add jshintrc to qunit.
props jorbin.
see #25187.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25925 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-30 14:39:10 +00:00
Mark Jaquith
12d3fc7999 Add functions for generating metadata for video and audio, using the
ID3 library. Also allows themes/plugins to add thumbnail support
to these media types. Think stuff like album art, movie covers, and
video freeze-frames.

props wonderboymusic. fixes #23673

git-svn-id: http://core.svn.wordpress.org/trunk@23766 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-21 04:55:42 +00:00
Sergey Biryukov
caf591b7aa Declare the variable before using it. props danielbachhuber. fixes #23710.
git-svn-id: http://core.svn.wordpress.org/trunk@23632 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-07 04:46:19 +00:00
Sergey Biryukov
2967871d34 Return WP_Error from wp_crop_image() if saving has failed. props macbrink. fixes #23325.
git-svn-id: http://core.svn.wordpress.org/trunk@23374 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-02 02:01:59 +00:00
Andrew Nacin
9120cf3375 WP_Image_Editor: the last stand.
* Have wp_get_image_editor() rather than WP_Image_Editor::get_instance(). Having static factory methods would be less confusing if there weren't also static methods tied to individual editor implementations.
 * Lazy-load the WP_Image_Editor base class and editor implementations.
 * Have WP_Image_Editor_GD::supports_mime_type() actually check which types it supports.
 * Deprecate gd_edit_image_support() in favor of wp_image_editor_supports().

props DH-Shredder, scribu, markoheijnen. fixes #22356. see #6821.



git-svn-id: http://core.svn.wordpress.org/trunk@22817 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-22 09:52:16 +00:00
Andrew Nacin
f68b6006de wp_generate_attachment_metadata() should not call WP_Image_Editor if there's nothing to resize. props mdawaffe. fixes #22438.
git-svn-id: http://core.svn.wordpress.org/trunk@22571 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-14 14:26:52 +00:00
Ryan Boren
02d80201fa In wp_crop_image(), preserve both src_file and src. src_file must be preserved even when url fopen is used so that we don't try to save to a filename based on the url.
see #6821


git-svn-id: http://core.svn.wordpress.org/trunk@22553 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-13 00:03:55 +00:00
Ryan Boren
31e669df5a Pass an attachment ID, not a file path, to _load_image_to_edit_path() from wp_crop_image(). This fixes handling of attachments that require url fopen to access the image.
Allow passing urls instead of just file paths to WP_Image_Editor_Imagick::load() and WP_Image_Editor_GD::load() so that attachments requiring URL fopen can be handled.

see #6821


git-svn-id: http://core.svn.wordpress.org/trunk@22538 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-10 20:42:27 +00:00
Andrew Nacin
f965ff1c84 Cast image metadata focal_length and shutter_speed to strings to restore previous behavior when stripslashes_deep() converted these values. Avoids rounding errors without making a determination of which digit we should round to. props jcakec. fixes #22259.
git-svn-id: http://core.svn.wordpress.org/trunk@22319 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-28 16:17:56 +00:00
Ryan Boren
da8d7a347a Check for WP_Error return from WP_Image_Editor::get_instance().
Props markoheijnen
see #6821


git-svn-id: http://core.svn.wordpress.org/trunk@22192 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 18:59:41 +00:00
Ryan Boren
b4d0be2d1a Introduce WP_Image_Editor, WP_Image_Editor_Imagick, and WP_Image_Editor_GD. Abstracts image editing API and adds support for ImageMagick.
Props DH-Shredder, kurtpayne, markoheijnen
see #6821


git-svn-id: http://core.svn.wordpress.org/trunk@22094 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-01 20:59:06 +00:00
Andrew Nacin
70ad7496a6 Deprecate wp_create_thumbnail(). props obenland. fixes #21555.
git-svn-id: http://core.svn.wordpress.org/trunk@21956 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-23 17:48:24 +00:00
Andrew Nacin
2d1eae820f Avoid mangling UTF-8 strings that may be present in image metadata. props SergeyBiryukov for the unit tests [UT665]. fixes #9417.
git-svn-id: http://core.svn.wordpress.org/trunk@21905 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-18 23:38:25 +00:00
Andrew Nacin
670105e1fb Remove 'hwstring_small' from attachment metadata and deprecate get_udims(). props SergeyBiryukov. fixes #21518.
git-svn-id: http://core.svn.wordpress.org/trunk@21808 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-11 01:38:26 +00:00
ryan
bce8cd343a Make sure the path exists before copying. see #20657
git-svn-id: http://core.svn.wordpress.org/trunk@21039 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-10 01:26:12 +00:00
azaozz
cb71d2fe62 Fix notice in wp_read_image_metadata() when EXIF ISOSpeedRatings is array, props nacin, fixes #20807
git-svn-id: http://core.svn.wordpress.org/trunk@20978 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-02 01:39:00 +00:00
ryan
c0339644ea Shears of vigorous pinking.
git-svn-id: http://core.svn.wordpress.org/trunk@20944 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-27 16:25:43 +00:00
ryan
b212ead08c Remove debug cruft. Fix typo. Props SergeyBiryukov. fixes #20657
git-svn-id: http://core.svn.wordpress.org/trunk@20808 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-16 18:11:19 +00:00
ryan
a6894d0b59 Create a new attachment and make a copy of the image when selecting an image from the image library. This prevents orphaning the header if the original attachment is deleted. This also prevents stomping of meta.
Add a button to skip cropping.

Props SergeyBiryukov
Fixes #20657 #20667


git-svn-id: http://core.svn.wordpress.org/trunk@20806 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-16 17:47:55 +00:00
ryan
52e7e65d2d Make the file names unique for cropped header images. Props SergeyBiryukov. fixes #20666
git-svn-id: http://core.svn.wordpress.org/trunk@20787 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-14 17:53:03 +00:00
ryan
61ffb70037 Don't convert png to jpg when cropping a header. Prevents stomping transparency. Props SergeyBiryukov, kovshenin. fixes #20555
git-svn-id: http://core.svn.wordpress.org/trunk@20706 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-02 21:35:56 +00:00
ryan
54b3b79dea Use correct var name. Props mattonomics. fixes #20432
git-svn-id: http://svn.automattic.com/wordpress/trunk@20454 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-12 21:02:24 +00:00
ryan
a7f2d67f6d Make choosing a header image from the media library play nicely with file replication plugins that do not guarantee images will be retained in the local filesystem.
* When passing an attachment ID to wp_crop_image(), use load_image_to_edit() to fetch the image via a url fopen when the image does not exist in the filesystem.
* Move load_image_to_edit() to wp-admin/includes/image.php so that it is always available for admin pages loads.
* Fallback to the height and width stored in the attachment meta when the image no longer exists in the filesystem.

see #19840


git-svn-id: http://svn.automattic.com/wordpress/trunk@20384 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-06 20:47:24 +00:00
ryan
83b131f8e3 User lowercase true, false, null instead of uppercase. Props c3mdigital, mfields. fixes #16302
git-svn-id: http://svn.automattic.com/wordpress/trunk@19687 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-05 20:50:54 +00:00
ryan
07ff8b216b Use one space, not two, after trailing punctuation. fixes #19537
git-svn-id: http://svn.automattic.com/wordpress/trunk@19593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-12-13 23:45:31 +00:00
duck_
c1d1590171 Fix typos in documentation (wp-admin/). See #18560.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18632 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-03 14:18:10 +00:00
dd32
bf6510abd1 Fix image_resize() dependencies by moving wp_load_image() from admin includes to wp-includes. Fixes #7279
git-svn-id: http://svn.automattic.com/wordpress/trunk@13860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-03-28 03:39:00 +00:00
nacin
39605976b1 Use utf8_encode() consistently in wp_read_image_metadata(). Also add some whitespace. props miqrogroove, see #11417, see #12095
git-svn-id: http://svn.automattic.com/wordpress/trunk@13249 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-20 12:09:30 +00:00
nacin
f58329a718 Improved IPTC and EXIF handling. Drag a wider net and also try to avoid numeric attachment slugs where possible. Props miqrogroove. See #11417
git-svn-id: http://svn.automattic.com/wordpress/trunk@13244 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-20 09:17:34 +00:00
ryan
a7c1b164f6 Deprecate wp_shrink_dimension(), add wp-admin/includes/deprecated.php. Props filosofo. fixes #11967
git-svn-id: http://svn.automattic.com/wordpress/trunk@12823 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-25 18:50:01 +00:00
westi
bf4a5241e1 Add missing version numbers to _deprecated_argument() calls.
Remove deprecated argument from xfn_check() calls.
Pass version number to deprecated_file_included, deprecated_function_run and deprecated_argument_run actions.
Fixes #11386 props nacin.

git-svn-id: http://svn.automattic.com/wordpress/trunk@12680 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-09 10:03:55 +00:00
westi
cc30f8ad98 Introduce a single function for getting all the intermediate image sizes to be used both when adding attachements and deleting. Fixes #10263 props scribu.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12659 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-08 08:51:12 +00:00
westi
ff7831207c Updates and improvements to _depreceated_argument. See #11386 props nacin.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12584 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-30 16:23:39 +00:00
ryan
9b6bd6bf87 Retunr WP_Error from wp_crop_image() and image_resize(). Props mdwaffe. fixes #9922
git-svn-id: http://svn.automattic.com/wordpress/trunk@12524 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-23 18:39:31 +00:00
markjaquith
bf264bb66d Post/Page Image was too generic a name. Post/Page Thumbnail is more clear, even if you can create very large thumbnail images if you so choose.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12351 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-10 06:14:36 +00:00