Commit Graph

88 Commits

Author SHA1 Message Date
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 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 a018cdd4e3 Docs: Add missing `@since` entries for functions in `wp-admin/image-edit.php`.
See #42505.
Built from https://develop.svn.wordpress.org/trunk@42756


git-svn-id: http://core.svn.wordpress.org/trunk@42586 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-02-26 18:38:31 +00:00
Adam Silverstein d82e2b02be Media: improve flows for cropping on attachment details screen.
On the "Attachment Details" screen:
* The crop button is always 'enabled'.
* Clicking the crop button with no selection selects the entire image.
* Clicking the crop button with the entire image selected doesn't do anything.
* Clicking the crop button with a selection crops as expected.

Props sonjanyc, afercia, mikeschroder.
Fixes #30155.

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


git-svn-id: http://core.svn.wordpress.org/trunk@42233 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-12-15 22:03:50 +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
John Blackbourn 9891448a42 Media: Rename several attachment related parameters from `$post_id` to `$attachment_id` for clarity, and improve related
documentation.

See #41017

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


git-svn-id: http://core.svn.wordpress.org/trunk@41128 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-08-22 11:12:44 +00:00
Drew Jaynes 3a6985de96 Docs: Standardize and add missing deprecation notations in DocBlocks for the following functions:
* `post_form_autocomplete_off()`
* `_rotate_image_resource()`
* `_flip_image_resource()`
* `wp_get_sites()`
* `deactivate_sitewide_plugin()`

Props jrf.
See #41121.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40772 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-06-22 17:48:45 +00:00
Sergey Biryukov 285a774cad I18N: Remove unnecessary `__()` calls in `_rotate_image_resource()` and `_flip_image_resource()`.
Use `_deprecated_function()`'s native strings.

Props ramiy.
Fixes #38862.
Built from https://develop.svn.wordpress.org/trunk@39314


git-svn-id: http://core.svn.wordpress.org/trunk@39254 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-19 02:30:31 +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 7ac88c02fa Media: when calling `pathinfo()`, also pass a `PATHINFO_*` constant to avoid array notices for unset keys.
Props JaworskiMatt.
Fixes #37608.

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


git-svn-id: http://core.svn.wordpress.org/trunk@38235 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-20 23:36:28 +00:00
Dominik Schilling 06c71ee6ec Docs: Fix minor formatting issue for a comment added in [38113].
See #32171.
Built from https://develop.svn.wordpress.org/trunk@38139


git-svn-id: http://core.svn.wordpress.org/trunk@38080 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-22 13:46:28 +00:00
Mike Schroder 1736b7b29c Media: Clean up prior image edits if `IMAGE_EDIT_OVERWRITE` is true.
When `IMAGE_EDIT_OVERWRITE` is set to true, edited image files are
supposed to be deleted when an image is restored to the original.

However, when an image was edited more than once, and then restored,
files created during previous edits were left behind.

Fixes this behavior by updating `wp_save_image()` to clean up
leftover images after each edit when `IMAGE_EDIT_OVERWRITE` is true.

Props bradt, chriscct7, joemcgill.
Fixes #32171.
Built from https://develop.svn.wordpress.org/trunk@38113


git-svn-id: http://core.svn.wordpress.org/trunk@38054 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-20 07:35:28 +00:00
Dominik Schilling aa561e67a1 Bootstrap: Enhance core's memory limit handling.
* Don't lower memory limit if the current limit is greater than `WP_MAX_MEMORY_LIMIT`.
* Set `WP_MEMORY_LIMIT` and `WP_MAX_MEMORY_LIMIT` to current limit if the `memory_limit` setting can't be changed at runtime.
* Use `wp_convert_hr_to_bytes()` when parsing the value of the `memory_limit` setting because it can be a shorthand or an integer value.
* Introduce `wp_raise_memory_limit( $context )` to raise the PHP memory limit for memory intensive processes. This DRYs up some logic and includes the existing `admin_memory_limit` and `image_memory_limit` filters. The function can also be used for custom contexts, the `{$context}_memory_limit` filter allows to customize the limit.
* Introduce `wp_is_ini_value_changeable( $setting )` to determine whether a PHP ini value is changeable at runtime.
* Remove a `function_exists( 'memory_get_usage' )` check. Since PHP 5.2.1 support for memory limit is always enabled.

Related commits: [38011-38013]

Props jrf, A5hleyRich, swissspidy, ocean90.
Fixes #32075.
Built from https://develop.svn.wordpress.org/trunk@38015


git-svn-id: http://core.svn.wordpress.org/trunk@37956 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-08 14:37:30 +00:00
Sergey Biryukov 139387b7e5 Docs: Use 3-digit, x.x.x-style semantic versioning for `_doing_it_wrong()`, `_deprecated_function()`, `_deprecated_argument()`, and `_deprecated_file()` throughout core.
Props metodiew.
Fixes #36495.
Built from https://develop.svn.wordpress.org/trunk@37985


git-svn-id: http://core.svn.wordpress.org/trunk@37926 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-06 12:40:29 +00:00
Dominik Schilling de3b2db1e2 Media: Improve form validation errors handling when editing images.
* Use the same check for a numeric value used on the crop fields on all the other fields: don't display "NaN", just empty the field.
* Remove the inline script that runs the initialization of the image editor and call it after the editor UI is fully ready.

Props afercia.
Fixes #36316.
Built from https://develop.svn.wordpress.org/trunk@37966


git-svn-id: http://core.svn.wordpress.org/trunk@37907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-05 13:37:29 +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
Drew Jaynes fe3b007fdd Docs: Remove inline `@see` tags from function, class, and method references in inline docs.
Known functions, classes, and methods are now auto-linked in Code Reference pages following #meta1483.

Note: Hook references are still linked via inline `@see` tags due to the unlikelihood of reliably matching for known hooks based on a RegEx pattern.

See #32246.

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


git-svn-id: http://core.svn.wordpress.org/trunk@37308 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-02 04:00:28 +00:00
Andrea Fercia ae1575bd80 Media: make the Image Editor usable with a keyboard.
For accessibility, all interactive controls must be operable from the keyboard.
Replaces `<div>`s used as UI controls with buttons. Groups some logically-related
form elements.

Fixes #28864.
Built from https://develop.svn.wordpress.org/trunk@36223


git-svn-id: http://core.svn.wordpress.org/trunk@36190 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-08 19:13:26 +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
Andrea Fercia db8b09c40d Media: Improve the headings hierarchy in the Media Views for better accessibility.
Fixes #34273.
Built from https://develop.svn.wordpress.org/trunk@35427


git-svn-id: http://core.svn.wordpress.org/trunk@35391 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-28 23:08:24 +00:00
Drew Jaynes 13c25f5f49 Docs: Put "it's" in its place (again).
Props kitchin.
Fixes #33894.

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


git-svn-id: http://core.svn.wordpress.org/trunk@34198 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-16 12:46:28 +00:00
Scott Taylor a0e373ef80 For doc block types, favor `bool` over the few remaining `boolean`s
See #32444.

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


git-svn-id: http://core.svn.wordpress.org/trunk@32935 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-27 01:03:25 +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 f6b1b01ecd Make a new function, `wp_delete_file()`. Use it.
Props scribu, wonderboymusic.
Fixes #17864.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31556 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-27 16:51:25 +00:00
Scott Taylor 7cb45f2402 Don't call the size function `count()` as part of a test condition in loops. Compute the size beforehand, and not on each iteration.
Scrutinizer added a Performance label: these are the only violations.

See #30799.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31535 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-26 05:48:24 +00:00
Drew Jaynes 4743843323 Add missing function and parameter descriptions to a variety of functions in wp-admin/includes/image-edit.php.
Props NikV for the initial patch.
Fixes #31353.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31510 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-24 06:07:26 +00:00
Andrew Ozz 00ff6675a2 Image file editor: fix a wrong error message when restoring an edited image and IMAGE_EDIT_OVERWRITE is set. Props tiqbiz, fixes #30167.
Built from https://develop.svn.wordpress.org/trunk@31070


git-svn-id: http://core.svn.wordpress.org/trunk@31051 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-07 22:48:22 +00:00
Scott Taylor a9302b2e36 If `IMAGE_EDIT_OVERWRITE` is defined as `true`, ensure that multiple edits to the same image does not result in the file being deleted (updating the meta fails because the old and new paths are identical).
Props hew.
Fixes #30394.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-04 02:52:24 +00:00
Drew Jaynes e4425165ff Improve the inline documentation for `image_edit_apply_changes()`.
Including:
* Add a correct type (array) for the `$changes` parameter
* Add the `@since` version
* Add proper descriptions for both parameters and the return value.

Props tillkruess for the initial patch.
See #30508.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30634 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 09:59:22 +00:00
Scott Taylor 5e3a64e83d Correct some types in `wp-admin/*`-location files' doc blocks.
See #30224.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30203 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-03 07:09:23 +00:00
Sergey Biryukov 51db702770 Remove requirement for a minimum image size in the image editor.
props ericlewis, solarissmoke.
fixes #11325.
Built from https://develop.svn.wordpress.org/trunk@29259


git-svn-id: http://core.svn.wordpress.org/trunk@29042 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-21 19:10:14 +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
Scott Taylor e9f87b2688 Avoid a notice in `wp_save_image()` by checking `$meta['sizes']['thumbnail']` for `! empty()` before setting a variable to it.
Props MikeHansenMe.
Fixes #17736.


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


git-svn-id: http://core.svn.wordpress.org/trunk@28194 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-11 03:42:14 +00:00
Andrew Nacin 51412f2e9b Account for new cropping settings in the image editor.
props Otto42, SergeyBiryukov.
fixes #19393.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27903 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-11 03:10:14 +00:00
Sergey Biryukov b48021f65f Clarify tooltips on Edit Image screen.
props siobhan.
fixes #27651.
Built from https://develop.svn.wordpress.org/trunk@27939


git-svn-id: http://core.svn.wordpress.org/trunk@27769 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-04 00:03:28 +00:00
Sergey Biryukov f8c39d6186 Use multiplication sign instead of a colon for selection size when editing an image.
props siobhan.
fixes #27652.
Built from https://develop.svn.wordpress.org/trunk@27931


git-svn-id: http://core.svn.wordpress.org/trunk@27761 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-03 09:46:17 +00:00
Andrew Nacin 3c1cdaa362 Restyle the image editor so it looks way less hideous.
props avryl.
see #27544.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27676 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-29 08:51:14 +00:00
Andrew Nacin dd70d0e30b Don't allow the image editor thumbnail to be dragged. see #21811.
Built from https://develop.svn.wordpress.org/trunk@27712


git-svn-id: http://core.svn.wordpress.org/trunk@27551 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-25 16:21:16 +00:00
Scott Taylor 00e63d2d2c The Image Editor should apply changes to custom image sizes by checking `$_wp_additional_image_sizes` for `$size` in `wp_save_image()` before arbitrarily going to the options table.
Props Otto42, SergeyBiryukov.
Fixes #19889.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 04:18:14 +00:00
Drew Jaynes c0e436d3d3 Inline documentation for hooks in wp-admin/includes/image-edit.php.
Props theorboman. Props kpdesign for the cleanup.
Fixes #26149.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27208 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-02 20:56:15 +00:00
Drew Jaynes b3bc78df8f Hook docs fixes following [26645].
See #25721.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26538 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-04 23:32:11 +00:00
Andrew Nacin 5361a8abca Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:59:20 +00:00
Andrew Nacin 8ae8e01b67 Remove the old wp_auto_updates_maybe_update cron event. Schedule the new wp_maybe_auto_update event at 7 a.m. and 7 p.m. in the site's timezone.
see #27704.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:53:14 +00:00
Andrew Nacin 74488bdcb0 Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25780 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-22 17:22:11 +00:00
Andrew Nacin f0eb99952c Make sure when resizing an image according to ratio we do not end up with a zero-pixel width or height.
props plocha.
fixes #25038.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25657 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-09 19:07:17 +00:00
Mark Jaquith 759298f8b8 Instead of saying that scaling up images will result in fuzzy images, just say that it's not supported (because it isn't).
fixes #23713. props ericlewis.

git-svn-id: http://core.svn.wordpress.org/trunk@24562 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-05 15:45:43 +00:00
Mark Jaquith fec4b66f5b Sanity checks on image metadata to avoid warnings, etc.
fixes #23733. props wonderboymusic.

git-svn-id: http://core.svn.wordpress.org/trunk@23873 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-29 20:51:35 +00:00
Ryan Boren 5f809d1d22 Use wp_unslash() instead of stripslashes() and stripslashes_deep(). Use wp_slash() instead of add_magic_quotes().
see #21767


git-svn-id: http://core.svn.wordpress.org/trunk@23563 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-01 17:00:25 +00:00
Ryan Boren 43a7e695e9 Revert 23416, 23419, 23445 except for wp_reset_vars() changes. We are going a different direction with the slashing cleanup, so resetting to a clean slate. see #21767
git-svn-id: http://core.svn.wordpress.org/trunk@23554 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-01 16:28:40 +00:00
Ryan Boren cc5ed3a485 Change all core API to expect unslashed rather than slashed arguments.
The exceptions to this are update_post_meta() and add_post_meta() which are often used by plugins in POST handlers and will continue accepting slashed data for now.

Introduce wp_upate_post_meta() and wp_add_post_meta() as unslashed alternatives to update_post_meta() and add_post_meta(). These functions could become methods in WP_Post so don't use them too heavily yet.

Remove all escape() calls from wp_xmlrpc_server. Now that core expects unslashed data this is no longer needed.

Remove addslashes(), addslashes_gpc(), add_magic_quotes() calls on data being prepared for handoff to core functions that until now expected slashed data. Adding slashes in no longer necessary.

Introduce wp_unslash() and use to it remove slashes from GPCS data before using it in core API. Almost every instance of stripslashes() in core should now be wp_unslash(). In the future (a release or three) when GPCS is no longer slashed, wp_unslash() will stop stripping slashes and simply return what is passed. At this point wp_unslash() calls can be removed from core.

Introduce wp_slash() for slashing GPCS data. This will also turn into a noop once GPCS is no longer slashed. wp_slash() should almost never be used. It is mainly of use in unit tests.

Plugins should use wp_unslash() on data being passed to core API.

Plugins should no longer slash data being passed to core. So when you get_post() and then wp_insert_post() the post data from get_post() no longer needs addslashes(). Most plugins were not bothering with this. They will magically start doing the right thing. Unfortunately, those few souls who did it properly will now have to avoid calling addslashes() for 3.6 and newer.

Use wp_kses_post() and wp_kses_data(), which expect unslashed data, instead of wp_filter_post_kses() and wp_filter_kses(), which expect slashed data. Filters are no longer passed slashed data.

Remove many no longer necessary calls to $wpdb->escape() and esc_sql().

In wp_get_referer() and wp_get_original_referer(), return unslashed data.

Remove old stripslashes() calls from WP_Widget::update() handlers. These haven't been necessary since WP_Widget.

Switch several queries over to prepare().

Expect something to break.

Props alexkingorg
see #21767


git-svn-id: http://core.svn.wordpress.org/trunk@23416 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-14 22:51:06 +00:00