Commit Graph

710 Commits

Author SHA1 Message Date
Gary Pendergast
ef5a9dfda6 Coding Standards: Fix/ignore the WordPress.NamingConventions.ValidFunctionName violations.
See #47632



git-svn-id: https://develop.svn.wordpress.org/trunk@45580 602fd350-edb4-49c9-b593-d223f7449a82
2019-07-01 08:00:12 +00:00
Sergey Biryukov
e283457e45 Date/Time: Add more supported formats to wp_maybe_decline_date().
Props SergeyBiryukov, Rarst.
Fixes #37411.

git-svn-id: https://develop.svn.wordpress.org/trunk@45555 602fd350-edb4-49c9-b593-d223f7449a82
2019-06-20 13:46:20 +00:00
Sergey Biryukov
f706a2d4c4 CSS Coding Standards: Use unitless values for line-height in wp-includes/functions.php.
Props ianbelanger, pbiron, afercia.
Fixes #46523. See #44643.

git-svn-id: https://develop.svn.wordpress.org/trunk@45473 602fd350-edb4-49c9-b593-d223f7449a82
2019-05-30 12:38:09 +00:00
Sergey Biryukov
10855438ea Date/Time: Replace all instances of date() with gmdate().
Use of `date()` in core depends on PHP timezone set to UTC and not changed by third party code (which cannot be guaranteed).

`gmdate()` is functionally equivalent, but is not affected by PHP timezone setting: it's always UTC, which is the exact behavior the core needs.

Props nielsdeblaauw, Rarst.
Fixes #46438. See #44491.

git-svn-id: https://develop.svn.wordpress.org/trunk@45424 602fd350-edb4-49c9-b593-d223f7449a82
2019-05-26 00:11:37 +00:00
Sergey Biryukov
6491746559 Date/Time: Use strict comparison in is_new_day(), add a unit test.
Props pbearne.
Fixes #46627.

git-svn-id: https://develop.svn.wordpress.org/trunk@45375 602fd350-edb4-49c9-b593-d223f7449a82
2019-05-22 17:52:22 +00:00
Sergey Biryukov
76755c0e68 Media: Fix deletion of files on Windows.
`wp_delete_file_from_directory()` should always normalize file paths before comparing.

Props tonybogdanov, SergeyBiryukov.
Fixes #47185.

git-svn-id: https://develop.svn.wordpress.org/trunk@45352 602fd350-edb4-49c9-b593-d223f7449a82
2019-05-17 13:28:15 +00:00
Sergey Biryukov
64d225cd00 Docs: Correct @return description for get_dirsize().
Props wpboss, tmatsuur.
Fixes #46987.

git-svn-id: https://develop.svn.wordpress.org/trunk@45249 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-19 13:38:04 +00:00
Andrew Ozz
e85b26d14c Site health, info tab:
- Change `recurse_dirsize()` to accept an array of excluded paths.
- Change so we don't calculate the sizes of dirs in wp-content twice.
- Add the size in bytes to the "debug" into.
- Add a custom DOM event after the dir sizes request is done. Can be used by plugins to "daisy chain" more requests.
- Move "WordPress directory location" and "WordPress directory size" to the top in the "Directories and Sizes" section.
- Move "Theme directory location" to the "Active Theme" section.
- Fix labels capitalization.

Props xkon, afercia, Clorith, azaozz.
Fixes #46707.

git-svn-id: https://develop.svn.wordpress.org/trunk@45220 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-16 23:01:45 +00:00
Sergey Biryukov
80817d3209 Bootstrap/Load: After [45016], make sure wp_die() does not cause _doing_it_wrong() notices if called before $wp_query global is set.
Props tmdesigned, TimothyBlynJacobs.
Fixes #46813.

git-svn-id: https://develop.svn.wordpress.org/trunk@45206 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-15 23:48:11 +00:00
Sergey Biryukov
78e868e4c7 Plugins: Introduce is_wp_version_compatible() and is_php_version_compatible() for checking compatibility with the current WordPress or PHP version.
Props afragen.
Fixes #46599.

git-svn-id: https://develop.svn.wordpress.org/trunk@45185 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-12 23:55:19 +00:00
Joe McGill
5021d218ef Media: Fix deletion of files when using stream wrappers.
This fixes a bug introduced in [43392] which breaks file deletion on systems using stream wrappers, due to limitations of `realpath()`.

Props antonypuckey, pfiled.
Fixes #44563.


git-svn-id: https://develop.svn.wordpress.org/trunk@45177 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-12 20:00:42 +00:00
Gary Pendergast
f1bef8668b Text Changes: Tweak the wording of email notification subjects.
This change brings more coherence between the subject lines of the various emails WordPress will send.

Props ramiy, pento.
Fixes #37940.


git-svn-id: https://develop.svn.wordpress.org/trunk@45137 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-08 06:16:41 +00:00
Andrew Ozz
9945849317 Site health: fix usage of max_execution_time. When PHP is run from the cli the default is 0.
Fixes #46645.

git-svn-id: https://develop.svn.wordpress.org/trunk@45111 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-04 21:53:45 +00:00
Andrew Ozz
d5d4979921 Site health:
- Prevent fatal errors from timeouts on the Tools => Site Health => Info tab.
- Use the `get_dirsize()` and `recurse_dirsize()` functions to calculate directory sizes. The results are cached.
- Introduce "timeout protection" in `recurse_dirsize()`.

Props pento, Clorith, xkon, afercia, jeremyfelt, azaozz.
Fixes #46645.

git-svn-id: https://develop.svn.wordpress.org/trunk@45104 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-02 23:32:31 +00:00
Sergey Biryukov
0612bb00e0 Plugins: In wp_update_php_annotation(), only display the annotation and the surrounding tags if it's not empty.
Props afragen.
Fixes #46678.

git-svn-id: https://develop.svn.wordpress.org/trunk@45045 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-27 22:36:37 +00:00
Sergey Biryukov
20ede58996 Docs: Improve documentation for wp_die() handlers after [45015] and [45016].
See #46543, #46025, #46026.

git-svn-id: https://develop.svn.wordpress.org/trunk@45017 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-26 23:17:36 +00:00
Sergey Biryukov
013a095ef4 Bootstrap/Load: Add support for XML requests to wp_die().
In addition to AJAX, XML-RPC, JSON, and JSONP requests, `wp_die()` now handles XML requests correctly, returning information in the expected content type.

Props spacedmonkey, birgire.
Fixes #46026. See #44458.

git-svn-id: https://develop.svn.wordpress.org/trunk@45016 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-26 23:10:21 +00:00
Sergey Biryukov
d270e8eb02 Bootstrap/Load: Add support for JSONP requests to wp_die().
In addition to AJAX, XML-RPC, and JSON requests, `wp_die()` now handles JSONP requests correctly, returning information in the expected content type.

Props spacedmonkey, TimothyBlynJacobs.
Fixes #46025. See #44458.

git-svn-id: https://develop.svn.wordpress.org/trunk@45015 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-26 22:25:47 +00:00
Sergey Biryukov
96922900c5 Plugins: Remove wp_is_wp_compatible() and wp_is_php_compatible() functions added in [44978] for now, to discuss use cases and better naming.
See #46599, #43992.

git-svn-id: https://develop.svn.wordpress.org/trunk@44981 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-22 12:59:02 +00:00
Sergey Biryukov
1586c43c8d Plugins: Block plugin activation if it requires a higher version of PHP or WordPress.
Introduce `validate_plugin_requirements()` for validating a plugin's WordPress and PHP version requirements.

Introduce `wp_is_wp_compatible()` and `wp_is_php_compatible()` for checking compatibility with the current WordPress or PHP version.

Props afragen, joyously, DrewAPicture, TimothyBlynJacobs, desrosj, flixos90, SergeyBiryukov.
See #43992.

git-svn-id: https://develop.svn.wordpress.org/trunk@44978 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-22 00:36:30 +00:00
Jonathan Desrosiers
b8a918dcaa General: Improve the PHP update notice annotation.
This change introduces the `wp_get_update_php_annotation()` function, which returns the message displayed when a host filters the direct PHP update or PHP update education URLs to indicate the information is site specific and provided by the host, not WordPress core.

It also updates `wp_update_php_annotation()` to accept a `$before` and `$after` parameter, which makes this notice more flexible for displaying in multiple locations within the admin area. Previously, the markup output in `wp_update_php_annotation()` was hardcoded, which was making it difficult to display it properly in multiple locations.

Props afragen, aaroncampbell, flixos90, TimothyBlynJacobs, desrosj.
Fixes #46044.

git-svn-id: https://develop.svn.wordpress.org/trunk@44935 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-19 16:53:46 +00:00
Sergey Biryukov
b3a5279e91 Docs: Improve documentation for wp_die() handlers.
See #46543.

git-svn-id: https://develop.svn.wordpress.org/trunk@44921 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-17 01:44:20 +00:00
Jonathan Desrosiers
4db5347299 Privacy: Do not attempt to cleanup personal data export files when the directory does not exist.
Checking for the presence of the directory and returning early prevents PHP warnings when attempting to list files in a non-existent directory.

Props arena, garrett-eclipse.
Fixes #45136.

git-svn-id: https://develop.svn.wordpress.org/trunk@44910 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 18:59:14 +00:00
Jonathan Desrosiers
ecfc9872d7 General: Add missing @since annotation for wp_get_direct_php_update_url().
Missed in [44815].

Props birgire.
See #46074.

git-svn-id: https://develop.svn.wordpress.org/trunk@44829 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-11 12:58:28 +00:00
Sergey Biryukov
ae5940dd25 Bootstrap/Load: Add nocache_headers() to all wp_die() handlers.
Props spacedmonkey.
Fixes #46054.

git-svn-id: https://develop.svn.wordpress.org/trunk@44828 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-11 11:46:41 +00:00
Sergey Biryukov
cba9eda1f4 Database: Use wp_die() instead of die() in dead_db(), for more flexibility and consistency with other error messages in core.
Props gitlost.
Fixes #41655.

git-svn-id: https://develop.svn.wordpress.org/trunk@44827 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-11 11:30:18 +00:00
Jonathan Desrosiers
8ae4796288 General: Add a way to specify a direct link for a user to update PHP.
A direct URL to where a user can update PHP for their website can now be specified in one of two ways:

- Defining the `WP_DIRECT_UPDATE_PHP_URL` environment variable.
- Returning a URL to the `wp_direct_php_update_url` filter.

When a URL is specified, an additional “Update PHP” button will be displayed at the bottom of the Core dashboard widget informing administrators that their site is running an outdated version of PHP (see [42832]).

Fixes #46074.
Props afragen, desrosj, lukecarbis.

git-svn-id: https://develop.svn.wordpress.org/trunk@44814 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-07 21:31:50 +00:00
Andrea Fercia
19abdee85f Coding standards: Fix incorrect CSS rgba() values.
Also, fixes some indentation where spaces were used instead of tabs.

Props nielslange, mukesh27.
Fixes #45937.


git-svn-id: https://develop.svn.wordpress.org/trunk@44791 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-04 22:01:10 +00:00
Aaron Jorbin
e421f262dc 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@44785 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-01 20:57:26 +00:00
Felix Arntz
fbe0605156 Bootstrap/Load: Fix fatal error when passing a WP_Error to wp_die().
This was introduced in [44466]. Also, this changeset adds tests for `_wp_die_process_input()` so that this never happens again.

Props dd32.
See #45933.


git-svn-id: https://develop.svn.wordpress.org/trunk@44690 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-22 08:51:56 +00:00
John Blackbourn
dba1a0f436 Bootstrap/Load: Update the @since entry for wp_die().
See #46038


git-svn-id: https://develop.svn.wordpress.org/trunk@44682 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-21 22:51:07 +00:00
Gary Pendergast
1d2153b0c1 Media: Add a $real_mime parameter to the wp_check_filetype_and_ext filter.
This allows more accurate filtering of the filename and extension given to uploaded files.

Props desrosj, Tkama.
Fixes #45707.



git-svn-id: https://develop.svn.wordpress.org/trunk@44677 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-21 21:51:29 +00:00
Felix Arntz
43bbbbf8b8 Bootstrap/Load: Fix bug causing AJAX functions to return a 500 when passing a null response to wp_die().
This bug was introduced in [44497].

Props ocean90.
See #45933.


git-svn-id: https://develop.svn.wordpress.org/trunk@44673 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-21 20:06:24 +00:00
Felix Arntz
50d4abc949 Bootstrap/Load: Ensure that the fatal error shutdown handler does not prevent other shutdown handlers from being called.
This changeset adds support for a new `wp_die()` argument `exit`, which defaults to true and determines whether `wp_die()` should actually terminate the request. The new fatal error handler then calls `wp_die()` with that argument set to false, as calling `die()` or `exit` from a PHP shutdown function prevents other shutdown functions from being called.

Props schlessera, johnbillion.
Fixes #46038. See #44458.


git-svn-id: https://develop.svn.wordpress.org/trunk@44671 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-21 19:09:23 +00:00
Felix Arntz
562ef09446 Bootstrap/Load: Support WP_Error and $args passed to wp_die() consistently in all handlers.
Prior to this change, each `wp_die()` handler had their own logic for how to parse arguments, causing inconsistencies and even breakage because the arguments possible to pass to `wp_die()` depended on the request context. Passing a `WP_Error` as `$message` for example used to be only support by the default handler, but not the AJAX and XML-RPC handlers.

With the fatal error protection, plus the new `wp_die()` handlers related to that, improving this support and compatibility has become more significant. Therefore this changeset introduces a private `_wp_die_process_input()` function that handles all function parameters consistently.

Props spacedmonkey, flixos90, schlessera.
Fixes #45933. See #44458.


git-svn-id: https://develop.svn.wordpress.org/trunk@44666 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-21 16:01:53 +00:00
Felix Arntz
17e5f4ad0b Plugins: Use centralized API to display information about updating PHP when a plugin requires a higher version.
This changeset uses the API functions introduced in [44476] to link to the resource about updating PHP when highlighting a plugin's required PHP version is not met. It furthermore expands them, introducing a new `wp_update_php_annotation()` function that prints the markup to indicate that the default URL has been altered by the web host, allowing it to be reused universally.

Furthermore, this changeset adds missing `update_php` capability checks before displaying the information about updating PHP.

Props afragen.
Fixes #45986. See #43986, #45686.


git-svn-id: https://develop.svn.wordpress.org/trunk@44627 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-16 17:05:37 +00:00
Felix Arntz
34bd90a7c9 Bootstrap/Load: Add support for JSON requests to wp_die().
In addition to AJAX and XML-RPC requests, `wp_die()` now handles JSON requests correctly, returning information in the expected content type.

Props spacedmonkey.
See #45933, #44458.


git-svn-id: https://develop.svn.wordpress.org/trunk@44625 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-16 15:21:49 +00:00
Felix Arntz
633a444219 Bootstrap/Load: Fix workaround to display admin link in PHP error template by introducing $link_url and $link_text arguments to wp_die().
This changeset removes the hack that was used before to display more complex HTML markup than a simple message in the default PHP error template via `wp_die()`. By removing HTML markup from the arguments passed to `wp_die()` it furthermore paves the way for supporting other content types than the default.

The message and arguments can be modified with new `wp_php_error_message` and `wp_php_error_args` filters respectively.

Furthermore this changeset fixes a few issues of functions not existing which could potentially have caused fatal errors when executed early in the WordPress bootstrap process.

Props flixos90, spacedmonkey.
See #45933, #44458.


git-svn-id: https://develop.svn.wordpress.org/trunk@44624 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-16 15:20:04 +00:00
Gary Pendergast
d7e86e8313 Docs: Update the @since version for the doing_it_wrong_trigger_error filter.
Fixes #34183.



git-svn-id: https://develop.svn.wordpress.org/trunk@44590 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-15 00:51:44 +00:00
Gary Pendergast
8cc49330a4 Coding Standards: Fix the minor WordPress.WP.I18n violations.
`WordPress.WP.I18n.MissingTranslatorsComment` is in progress in #44360.

See #45934.



git-svn-id: https://develop.svn.wordpress.org/trunk@44562 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-11 06:03:46 +00:00
Felix Arntz
08564b5a80 General: Fix problematic string to array parsing.
WordPress has historically often used code like `preg_split( '/[\s,]+/', $var )` to parse a string of comma-separated values into an array. However, this approach was causing an empty string to not be parsed into an empty array as expected, but rather into an array with the empty string as its sole element.

This was among other areas causing problems in the REST API where passing an empty request parameter could cause that request to fail because, instead of it being ignored, that parameter would be compared against the valid values for it, which typically do not include an empty string.

Props david.binda, sstoqnov.
Fixes #43977.


git-svn-id: https://develop.svn.wordpress.org/trunk@44546 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-10 21:05:50 +00:00
Gary Pendergast
ba495ec173 Filesystem: Improve wp_is_stream() performance.
Instead of turning the return value of `stream_get_wrappers()` into a regex to match the scheme, we can instead extract the scheme and search the return value of `stream_get_wrappers()`.

Props schlessera, swissspidy.
Fixes #45553.



git-svn-id: https://develop.svn.wordpress.org/trunk@44506 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-09 09:50:19 +00:00
Adam Silverstein
f968e9d52f Media: improve the human_readable_duration function and tests.
Improve the `human_readable_duration` added in #39667:
* Remove upper limit.
* More resilient handling: remove negative prefix, trim.
* Correct @since to 5.1.0.
* Adds more test cases and improve inline docs.

Props birgire.
Fixes #39667.


git-svn-id: https://develop.svn.wordpress.org/trunk@44481 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-08 19:55:31 +00:00
Jonathan Desrosiers
559056f62f Docs: Improve accuracy of wp_list_sort()’s $list parameter description.
Props manikmist09.
Fixes #45766.

git-svn-id: https://develop.svn.wordpress.org/trunk@44480 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-08 19:53:34 +00:00
Felix Arntz
aea4b2765a General: Make Update PHP notice link customizable.
After [42832], [42891] and [43006], this changeset refines the core notice informing about an outdated PHP version:

* The link to the Update PHP information page can now be adjusted using either a `WP_UPDATE_PHP_URL` environment variable, or a new `wp_update_php_url` filter.
* If that URL is different from the default one that points to https://wordpress.org/support/update-php/ or its localized equivalent, a note indicates that the linked resource has not been provided by WordPress itself, and the default URL is still linked to as an additional resource.
* The URL for the default information page has been updated to use the slug `update-php` instead of `upgrade-php`.
* `@since` annotations have been updated.

Going forward, admin areas that display information related to the PHP version should use the new function `wp_get_update_php_url()`.

Props afragen, fierevere, flixos90, markjaquith, miss_jwo, nerrad, pento, schlessera, SergeyBiryukov, spacedmonkey.
Fixes #45686. See #41191.


git-svn-id: https://develop.svn.wordpress.org/trunk@44476 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-08 17:26:38 +00:00
Felix Arntz
4657735ba6 Multisite: Update @since tags for site meta introduction.
Fixes #37923. Fixes #40229.


git-svn-id: https://develop.svn.wordpress.org/trunk@44467 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-08 08:17:34 +00:00
Joe McGill
843111a03b PHPCS: Fix formatting issues.
Fixes formatting issues introduced in [44438].

See #45615.


git-svn-id: https://develop.svn.wordpress.org/trunk@44441 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-07 21:08:03 +00:00
Joe McGill
94c8a5d994 Upload: Fix upload failures of common text file types.
This adds some special case handling in 'wp_check_filetype_and_ext()' that prevents some common file types from being blocked based on mismatched MIME checks, which were made more strict in WordPress 5.0.1.

Props Kloon, birgire, tellyworth, joemcgill.
See #45615.


git-svn-id: https://develop.svn.wordpress.org/trunk@44438 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-07 20:47:56 +00:00
Jonathan Desrosiers
3ea2d810d9 General: Update since annotation for wp_unique_id().
In [43658], `wp_unique_id()` was introduced. This updates the `since` annotation to be accurate.

See #44883.

git-svn-id: https://develop.svn.wordpress.org/trunk@44406 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-06 19:51:14 +00:00
Jonathan Desrosiers
cd0d745360 Docs: Update since tag for HTTP status code 103 support.
Originally added in [42207].

Fixes #42490.

git-svn-id: https://develop.svn.wordpress.org/trunk@44383 602fd350-edb4-49c9-b593-d223f7449a82
2019-01-03 15:20:32 +00:00
Jonathan Desrosiers
06f2b3f5bc Media: Improve verification of MIME file types.
Merges [43988] to trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@44292 602fd350-edb4-49c9-b593-d223f7449a82
2018-12-18 16:34:17 +00:00
Sergey Biryukov
e1ff4cd7cd General: Introduce wp_unique_id(), a PHP implementation of Underscore's uniqueId method.
A static variable contains an integer that is incremented with each call. This number is returned with the optional prefix.
As such the returned value is not universally unique, but it is unique across the life of the PHP process.

Props westonruter, dlh.
See #44883.

git-svn-id: https://develop.svn.wordpress.org/trunk@43658 602fd350-edb4-49c9-b593-d223f7449a82
2018-09-24 20:56:30 +00:00
Sergey Biryukov
75a5293460 Docs: Add a line break to wp_is_uuid() DocBlock for better readability.
See #42505.

git-svn-id: https://develop.svn.wordpress.org/trunk@43657 602fd350-edb4-49c9-b593-d223f7449a82
2018-09-24 20:45:01 +00:00
Adam Silverstein
fd5ba80c5c Media: Improve display and accessibility of meta data in detail view.
* Add a `human_readable_duration` function including tests.
* Add 'pixels' after image width/height.
* Add screen reader text for durations.

Props Presskopp, kiranpotphode, milindmore22, stormrockwell, afercia.
Fixes #39667. 



git-svn-id: https://develop.svn.wordpress.org/trunk@43633 602fd350-edb4-49c9-b593-d223f7449a82
2018-09-08 04:19:40 +00:00
Sergey Biryukov
9db8106f92 Docs: Convert @see reference in wp_checkdate() DocBlock to @link.
Props WiZZarD_.
Fixes #44866.

git-svn-id: https://develop.svn.wordpress.org/trunk@43599 602fd350-edb4-49c9-b593-d223f7449a82
2018-08-30 13:48:50 +00:00
Sergey Biryukov
f1862cd98c Date/Time: Make sure current_time() always calculates the offset from GMT/UTC.
Previously, UTC context was implied, but could be unreliable due to being affected by plugins.

Props Rarst, rahulsprajapati, marco.marsala.
Fixes #37440.

git-svn-id: https://develop.svn.wordpress.org/trunk@43594 602fd350-edb4-49c9-b593-d223f7449a82
2018-08-30 12:12:55 +00:00
Felix Arntz
b0c83c8ee7 General: Provide context parameters to doing_it_wrong_trigger_error filter.
`$function`, `$message`, and `$version` have historically been passed to the `doing_it_wrong_run` action. It makes sense to pass those to the filter as well, so that one can conditionally determine the filter value to return.

Fixes #34183.


git-svn-id: https://develop.svn.wordpress.org/trunk@43587 602fd350-edb4-49c9-b593-d223f7449a82
2018-08-28 13:37:26 +00:00
Gary Pendergast
a75d153eee 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.



git-svn-id: https://develop.svn.wordpress.org/trunk@43571 602fd350-edb4-49c9-b593-d223f7449a82
2018-08-17 01:50:26 +00:00
Gary Pendergast
6c8c2aeaf9 Streams: Return early from wp_is_stream() for paths that aren't streams.
Some versions of PHP appear to have a memory leak that is occasionally triggered by calling `stream_get_wrappers()`. In order to avoid calling this, we can return early from `wp_is_stream()` when `$path` doesn't contain `://`.

Props pbiron, JPry, dontstealmyfish.
Fixes #44532.



git-svn-id: https://develop.svn.wordpress.org/trunk@43466 602fd350-edb4-49c9-b593-d223f7449a82
2018-07-17 07:53:18 +00:00
John Blackbourn
f584b5755a Date/Time: Add support for the c and r shorthand formats in date_i18n().
Props Rarst, pbearne

Fixes #20973


git-svn-id: https://develop.svn.wordpress.org/trunk@43434 602fd350-edb4-49c9-b593-d223f7449a82
2018-07-05 23:10:01 +00:00
John Blackbourn
adbec850ef Media: Update the @since tag for wp_normalize_path() as this has been backported to th 3.9 (and all other) branches.
See #42837


git-svn-id: https://develop.svn.wordpress.org/trunk@43406 602fd350-edb4-49c9-b593-d223f7449a82
2018-07-05 15:20:46 +00:00
John Blackbourn
0f5488c3fc Media: Limit thumbnail file deletions to the same directory as the original file.
git-svn-id: https://develop.svn.wordpress.org/trunk@43392 602fd350-edb4-49c9-b593-d223f7449a82
2018-07-05 14:31:24 +00:00
Felix Arntz
21190f2eac Date/Time: Fix usage of $gmt parameter in date_i18n() and clarify its behavior.
The docs for `date_i18n()` and its filter now correctly state that the `$gmt` parameter is only taken into account if no timestamp is provided. Furthermore, a bug with that parameter is fixed, as it is now ensured that the timezone used with it is `UTC`.

Props Rarst.
Fixes #38771.


git-svn-id: https://develop.svn.wordpress.org/trunk@43389 602fd350-edb4-49c9-b593-d223f7449a82
2018-07-04 23:42:59 +00:00
Felix Arntz
d448c448ca Date/Time: Add support for gmt_offset to date_i18n().
Prior to this change, `date_i18n()` only supported the `timezone_string` option, causing incorrect timezones to appear in formatted dates on sites that still rely on the `gmt_offset` option.

Props Rarst.
Fixes #34835.


git-svn-id: https://develop.svn.wordpress.org/trunk@43387 602fd350-edb4-49c9-b593-d223f7449a82
2018-07-03 15:58:58 +00:00
Sergey Biryukov
0e7ed499e0 Date/Time: Simplify mysql_to_rfc3339().
Erasing timezone with a regular expression is redundant, the date could be just formatted in the respective format instead.

Props Rarst.
Fixes #42542.

git-svn-id: https://develop.svn.wordpress.org/trunk@43384 602fd350-edb4-49c9-b593-d223f7449a82
2018-06-26 18:00:58 +00:00
Sergey Biryukov
63aab770eb Docs: Correct description for mysql_to_rfc3339().
Despite historical function name, the output does not conform to RFC3339 format, which must contain timezone.

Props Rarst.
See #42542.

git-svn-id: https://develop.svn.wordpress.org/trunk@43383 602fd350-edb4-49c9-b593-d223f7449a82
2018-06-26 17:52:58 +00:00
Sergey Biryukov
efe9a3eb21 Docs: Improve documentation for date_i18n()'s second argument.
Despite previously being labeled as a Unix timestamp, in reality it's a sum of Unix timestamp and timezone offset in seconds.

Props Rarst.
See #38771.

git-svn-id: https://develop.svn.wordpress.org/trunk@43380 602fd350-edb4-49c9-b593-d223f7449a82
2018-06-26 13:18:13 +00:00
Ian Dunn
3e3db8af66 Privacy: Rename exports folder to avoid deleting other files.
Previously, personal data exports were stored in `wp-content/uploads/exports`, which is generic enough that it's likely there are existing folders with that name, either created by plugins or manually by administrators. If that folder were reused by Core, then `wp_privacy_delete_old_export_files()` would delete all of the existing files inside it, which is almost certainly not what the site owner wants or expects.

To avoid that, the folder is being renamed to include a specific reference to Core, and a more verbose description of its purpose. With those factored in, it's very unlikely that there will be any conflicts with existing folders.

The `wp_privacy_exports_dir()` and `wp_privacy_exports_url()` functions were introduced to provide a canonical source for the location, and the `wp_privacy_exports_dir` and `wp_privacy_exports_url` filters were introduced to allow plugins to customize it.

Props johnjamesjacoby, allendav.
Fixes #44091.


git-svn-id: https://develop.svn.wordpress.org/trunk@43284 602fd350-edb4-49c9-b593-d223f7449a82
2018-05-15 20:21:37 +00:00
Ian Dunn
6d4c88a057 Privacy: Replace intrusive policy update notice with menu bubbles.
Previously, when a plugin updated its suggested privacy policy text, an admin notice was shown on all screens in the Administration Panels. That was done in order to make sure that administrators were aware of it, so that they could update their policy if needed. That was a very heavy-handed and intrusive approach, though, which leads to a poor user experience, and notice fatigue. 

An alternative approach is to use bubble notifications in the menu, similar to when plugins have updates that need to be installed. That still makes it obvious that something needs the administrator's attention, but is not as distracting as a notice.

The notice will still appear on the Privacy page, though, since it is relevant to that screen, and provides an explanation of why the bubble is appearing.

Props azaozz, xkon, iandunn.
Fixes #43954. See #43953.


git-svn-id: https://develop.svn.wordpress.org/trunk@43223 602fd350-edb4-49c9-b593-d223f7449a82
2018-05-10 19:51:58 +00:00
Sergey Biryukov
6d2bcaa9b3 Administration: Change all the occurrences of "(opens in a new window)" to "(opens in a new tab)".
Props chetan200891, ianbelanger, afercia.
Fixes #43803.

git-svn-id: https://develop.svn.wordpress.org/trunk@43174 602fd350-edb4-49c9-b593-d223f7449a82
2018-05-05 09:44:21 +00:00
Ian Dunn
53b5112ca2 Privacy: Return before scheduling cron during install to avoid error.
r43046 introduced `wp_schedule_delete_old_privacy_export_files()` to schedule the `wp_privacy_delete_old_export_files` cron job, but it did not check to make sure it wasn't running in the context of the install process. When it did run in that context, it created a database error, because the necessary database tables don't exist at that point.

Checking the current context and returning early during the installation phase avoids that issue.

Props helen, timothyblynjacobs, iandunn.
Fixes #43952.


git-svn-id: https://develop.svn.wordpress.org/trunk@43162 602fd350-edb4-49c9-b593-d223f7449a82
2018-05-03 21:11:00 +00:00
Sergey Biryukov
3f92792cd2 Docs: Update @since version numbers for wp_privacy_anonymize_ip() and wp_privacy_anonymize_data().
Props joemcgill.
See #43545.

git-svn-id: https://develop.svn.wordpress.org/trunk@43081 602fd350-edb4-49c9-b593-d223f7449a82
2018-05-02 00:40:50 +00:00
Ian Dunn
cbfbadc99b Privacy: Include wp-admin/includes/file.php to avoid fatal error.
`list_files()` is defined in `wp-admin/includes/file.php`, which is not included by `wp-cron.php`, so it needs to be included by the caller in order to avoid a fatal PHP error.

This bug was not detected during testing because the file _is_ included when executing jobs via `wp cron event run`.

Props mikejolley, iandunn.
See #43546.
See https://wordpress.slack.com/archives/C9695RJBW/p1525190405000860.


git-svn-id: https://develop.svn.wordpress.org/trunk@43059 602fd350-edb4-49c9-b593-d223f7449a82
2018-05-01 17:42:50 +00:00
Ian Dunn
a1fe96576f Privacy: Add cron to delete expired export files to protect privacy.
The primary means of protecting the files is the CSPRN appended to the filename, but there is no reason to keep the files after the data subject has downloaded them, so deleting them provides an additional layer of protection. Previously this was done from `wp_privacy_generate_personal_data_export_file()`, but that does not guarantee that it will be run regularly, and on smaller sites that could result in export files being exposed for much longer than necessary.

`wp_privacy_delete_old_export_files()` was moved to a front end file, so that it can be called from `cron.php`.

This introduces the `wp_privacy_export_expiration` filter, which allows plugins to customize how long the exports are kept before being deleted.

`index.html` was added to the `$exclusions` parameter of `list_files()` to make sure that it isn't deleted. If it were, then poorly-configured servers would allow the directory to be traversed, exposing all of the exported files.

Props iandunn, desrosj.
See #43546.


git-svn-id: https://develop.svn.wordpress.org/trunk@43046 602fd350-edb4-49c9-b593-d223f7449a82
2018-04-30 20:08:37 +00:00
John Blackbourn
c71a898f78 Formatting: Begin the process of improving the docs for KSES related functions.
See #33801


git-svn-id: https://develop.svn.wordpress.org/trunk@43016 602fd350-edb4-49c9-b593-d223f7449a82
2018-04-28 13:57:32 +00:00
Andrew Ozz
257842079c Privacy: add a postbox that is shown when editing the privacy policy page, and where plugins and core will output suggested content and additional privacy info. First run.
Props melchoyce, azaozz.
See #43620.

git-svn-id: https://develop.svn.wordpress.org/trunk@42980 602fd350-edb4-49c9-b593-d223f7449a82
2018-04-16 08:52:18 +00:00
Andrew Ozz
43b5e9ac20 Privacy: add helper function for anonymizing data in a standardized way.
Props jesperher, allendav, iandunn, birgire, azaozz.
Fixes #43545.

git-svn-id: https://develop.svn.wordpress.org/trunk@42971 602fd350-edb4-49c9-b593-d223f7449a82
2018-04-12 21:19:24 +00:00
John Blackbourn
e207cdf2bb Docs: Document more parameters and properties using typed array notation.
See #41756


git-svn-id: https://develop.svn.wordpress.org/trunk@42876 602fd350-edb4-49c9-b593-d223f7449a82
2018-03-25 19:32:24 +00:00
Felix Arntz
8e4bd924d2 Multisite: Introduce metadata for sites.
A new global multisite table `wp_blogmeta` is added to the database schema, and a set of `*_site_meta()` API functions are introduced.

The implementation fails gracefully when the new table is not yet available, which may happen especially shortly after the core update, before the network has been upgraded to the new database schema. The presence of the table is detected once and stored as a global setting on the main network.

Core does not yet use site metadata, but there are several use-cases to be implemented or explored in the near future, and it allows plugins to extend sites with arbitrary data, which will come in particularly handy with the upcoming REST API endpoint for sites.

Props spacedmonkey, johnjamesjacoby, jeremyfelt, flixos90.
Fixes #37923.


git-svn-id: https://develop.svn.wordpress.org/trunk@42836 602fd350-edb4-49c9-b593-d223f7449a82
2018-03-16 02:14:04 +00:00
Sergey Biryukov
53fcfd87ac General: In wp_debug_backtrace_summary(), check if $call['args'] is defined to avoid a PHP notice.
Props paulschreiber.
Fixes #31215.

git-svn-id: https://develop.svn.wordpress.org/trunk@42824 602fd350-edb4-49c9-b593-d223f7449a82
2018-03-10 17:30:12 +00:00
Sergey Biryukov
5a2ea62a10 General: In wp_debug_backtrace_summary(), capture hook name for do_action_ref_array() and apply_filters_ref_array() as well.
Props Rarst.
Fixes #43488.

git-svn-id: https://develop.svn.wordpress.org/trunk@42820 602fd350-edb4-49c9-b593-d223f7449a82
2018-03-10 00:04:43 +00:00
Sergey Biryukov
19ed786c78 Filesystem API: Avoid an infinite loop in wp_mkdir_p() when trying to determine the parent folder with open_basedir restriction in effect.
Props soulseekah, 1265578519-1.
Fixes #43417.

git-svn-id: https://develop.svn.wordpress.org/trunk@42801 602fd350-edb4-49c9-b593-d223f7449a82
2018-03-08 19:31:59 +00:00
Sergey Biryukov
f6de9b77f8 General: In wp_debug_backtrace_summary(), normalize paths before replacement for better cross–platform compatibility.
Props Rarst.
Fixes #43501.

git-svn-id: https://develop.svn.wordpress.org/trunk@42800 602fd350-edb4-49c9-b593-d223f7449a82
2018-03-08 17:07:04 +00:00
John Blackbourn
b20dc7aaaf Docs: Standardise and correct documentation relating to parameters which accept plugin names.
See #42505


git-svn-id: https://develop.svn.wordpress.org/trunk@42787 602fd350-edb4-49c9-b593-d223f7449a82
2018-03-05 21:49:53 +00:00
Peter Wilson
d002fde80e General: Further improve error messages following [42648].
Props kristastevens, melchoyce.
Fixes #38332 for trunk.



git-svn-id: https://develop.svn.wordpress.org/trunk@42719 602fd350-edb4-49c9-b593-d223f7449a82
2018-02-19 02:12:41 +00:00
Drew Jaynes
1b46470b75 Docs: Link to the "Conditional Tags" article in the Theme Developer Handbook from the descriptions for a variety of core conditional tag functions.
These notations largely serve to direct consumers (of both the source and the parsed code reference) to extended information on individual and related conditional tags throughout WordPress. The changeset also standardizes corresponding DocBlock summaries to use third-person singular verbs.

Notations been added for the following functions:

* comments_open()
* email exists()
* has_excerpt()
* has_post_thumbnail()
* has_tag()
* in_category()
* in_the_loop()
* is_404()
* is_active_sidebar()
* is_active_widget()
* is_admin()
* is_admin_bar_showing()
* is_archive()
* is_attachment()
* is_author()
* is_blog_installed()
* is_category()
* is_comments_popup()
* is_date()
* is_day()
* is_dynamic_sidebar()
* is_feed()
* is_front_page()
* is_home()
* is_local_attachment()
* is_main_query
* is_month()
* is_multi_author
* is_new_day()
* is_page()
* is_page_template()
* is_paged()
* is_plugin_active()
* is_plugin_active_for_network()
* is_plugin_inactive()
* is_plugin_page()
* is_post_type_archive()
* is_preview()
* is_rtl()
* is_search()
* is_single()
* is_singular()
* is_sticky()
* is_tag()
* is_tax()
* is_taxonomy_hierarchical()
* is_time()
* is_trackback()
* is_user_logged_in()
* is_year()
* pings_open()
* post_type_exists()
* taxonomy_exists()
* term_exists()
* username exists()
* wp_attachment_is_image()
* wp_script_is()

Props janalwin.
Fixes #43254.


git-svn-id: https://develop.svn.wordpress.org/trunk@42710 602fd350-edb4-49c9-b593-d223f7449a82
2018-02-13 16:53:44 +00:00
Sergey Biryukov
4bc7afd701 Media: Add aac to the list of allowed file types.
Props desrosj.
Fixes #42919.

git-svn-id: https://develop.svn.wordpress.org/trunk@42697 602fd350-edb4-49c9-b593-d223f7449a82
2018-02-11 16:39:54 +00:00
John Blackbourn
4836686b6f Docs: Add missing code formatting to various @since entries.
See #42505


git-svn-id: https://develop.svn.wordpress.org/trunk@42678 602fd350-edb4-49c9-b593-d223f7449a82
2018-02-09 16:54:58 +00:00
Peter Wilson
f317869c7f General: Replace Cheatin’ uh? with friendlier error messages.
While intended as a playful error message, `Cheatin’ uh?` can be interpreted as insulting or accusatory in an already stressful situation. This replaces Cheatin’ with more meaningful error messages, depending on the error that occurs.

Props ElectricFeet, EricMeyer, karmatosed, dd32, BandonRandon, melchoyce for language; dmsnell for original patch; peterwilsoncc.
Fixes #38332.



git-svn-id: https://develop.svn.wordpress.org/trunk@42648 602fd350-edb4-49c9-b593-d223f7449a82
2018-02-05 02:29:53 +00:00
Sergey Biryukov
65f08f49da Email: Don't send notifications for site or network admin email address change to the default 'admin_email' value.
Props tigertech, MattyRob, seanchayes.
Fixes #42693.

git-svn-id: https://develop.svn.wordpress.org/trunk@42570 602fd350-edb4-49c9-b593-d223f7449a82
2018-01-23 13:44:25 +00:00
Sergey Biryukov
02ccaeed2c Media: Add flac to the list of allowed file types.
Props blobfolio.
Fixes #42225.

git-svn-id: https://develop.svn.wordpress.org/trunk@42451 602fd350-edb4-49c9-b593-d223f7449a82
2018-01-15 22:16:33 +00:00
Dion Hulse
70a92ca96e Streams: When checking in wp_is_stream() escape the stream wrapper names for PCRE to avoid PHP warnings when invalid stream wrappers are registered.
Fixes #43054.


git-svn-id: https://develop.svn.wordpress.org/trunk@42432 602fd350-edb4-49c9-b593-d223f7449a82
2018-01-10 02:49:49 +00:00
Dion Hulse
da689558a5 Filesystem: Allow wp_normalise_path() to handle PHP stream wrappers such as php:// correctly.
Props calin, dd32.
Fixes #42837.


git-svn-id: https://develop.svn.wordpress.org/trunk@42387 602fd350-edb4-49c9-b593-d223f7449a82
2017-12-12 04:15:54 +00:00
Gary Pendergast
8f95800d52 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.



git-svn-id: https://develop.svn.wordpress.org/trunk@42343 602fd350-edb4-49c9-b593-d223f7449a82
2017-11-30 23:09:33 +00:00
John Blackbourn
e2fdcb93f1 Hardening: Remove the ability to upload JavaScript files for users who do not have the unfiltered_html capability.
git-svn-id: https://develop.svn.wordpress.org/trunk@42261 602fd350-edb4-49c9-b593-d223f7449a82
2017-11-29 15:59:41 +00:00
Gary Pendergast
574821573a 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.



git-svn-id: https://develop.svn.wordpress.org/trunk@42228 602fd350-edb4-49c9-b593-d223f7449a82
2017-11-26 23:56:25 +00:00
Gary Pendergast
f797c252d9 General: Reformat inline if () statements inside HTML tags.
This pattern occurs a handful of times across the codebase:

`<div class="foo<?php if ( $bar ) { echo ' baz'; } ?>">`

Unfortunately, it doesn't really play nicely with `phpcbf`, so all instances need to be removed in preperation for auto code formatting.

See #41057.



git-svn-id: https://develop.svn.wordpress.org/trunk@42217 602fd350-edb4-49c9-b593-d223f7449a82
2017-11-23 04:08:42 +00:00
John Blackbourn
d821f8b28d HTTP API: Add support for a description for HTTP status code 103.
Props Dhruvin

Fixes #42490


git-svn-id: https://develop.svn.wordpress.org/trunk@42207 602fd350-edb4-49c9-b593-d223f7449a82
2017-11-20 20:34:52 +00:00
John Blackbourn
3e9a42ed27 Filesystem API: Add more specificity to the rules for valid files in validate_file().
This now treats files containing `./` as valid, and also treats files containing a trailing `../` as valid due to widespread use of this pattern in theme and plugin zip files.

Adds tests.

Props Ipstenu, borgesbruno, DavidAnderson, philipjohn, birgire
Fixes #42016, #36170


git-svn-id: https://develop.svn.wordpress.org/trunk@42011 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-24 23:14:33 +00:00
John Blackbourn
7329816301 Docs: Improve the docs for validate_file() and validate_file_to_edit().
See #42016, #36170, #41017


git-svn-id: https://develop.svn.wordpress.org/trunk@42007 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-24 22:49:13 +00:00
Sergey Biryukov
b36ed916e8 Formatting: Make sure wp_allowed_protocols() is filterable until wp_loaded has fired.
Fixes the issue with plugins not being able to use the `kses_allowed_protocols` filter if `esc_url()` was called too early.

Props turtlepod, SergeyBiryukov.
Fixes #36033.

git-svn-id: https://develop.svn.wordpress.org/trunk@41990 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-24 13:24:43 +00:00
Sergey Biryukov
0e87ef42d0 Docs: Fix typo in path_is_absolute() description.
Props octalmage, birgire.
Fixes #42317.

git-svn-id: https://develop.svn.wordpress.org/trunk@41983 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-23 22:50:30 +00:00
Felix Arntz
dd43699344 Multisite: Return get_current_blog_id() value instead of hard-coded 1 in get_main_site_id() for non-multisite environments.
See #41936.


git-svn-id: https://develop.svn.wordpress.org/trunk@41862 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-14 22:45:28 +00:00
Felix Arntz
4d6c257cf9 Multisite: Take WP_Network::$blog_id into account in get_main_site_id().
When the `WP_Network::$blog_id` property is set manually, for example in the multisite bootstrap process, `get_main_site_id()` should use that value instead of running its own logic. The main logic for the function was therefore moved into the internal `WP_Network::get_main_site_id()` method, which is now being accessed by the function through the magic property handling for `WP_Network::$blog_id` (and its equivalent `WP_Network::$site_id`).

Props spacedmonkey, jeremyfelt.
Fixes #41936.


git-svn-id: https://develop.svn.wordpress.org/trunk@41861 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-14 22:41:15 +00:00
John Blackbourn
645a550129 Users: Revert [41613], [41614], and [41623] as this feature needs some more work.
See #38741


git-svn-id: https://develop.svn.wordpress.org/trunk@41753 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-04 22:16:21 +00:00
John Blackbourn
1e16e5eee8 I18N: Allow the login screen language to be specified via a wp_lang query variable, and use this for the interim login modal.
This allows users who are using the admin area in a language other than the site language to read the notice on the login screen
(which explains that they need to log in again) in their chosen language.

Props Nikschavan, swissspidy

Fixes #40205


git-svn-id: https://develop.svn.wordpress.org/trunk@41692 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-02 23:20:12 +00:00
Gary Pendergast
f5c4c69bf1 Database: Don't quote placeholders in queries going through $wpdb->prepare()
To bring Core into line with the changes to `$wpdb->prepare()` in WordPress 4.8.2, query placeholders shouldn't be quoted.

Props jrf, johnjamesjacoby.
Fixes #41983.



git-svn-id: https://develop.svn.wordpress.org/trunk@41628 602fd350-edb4-49c9-b593-d223f7449a82
2017-09-28 04:31:05 +00:00
John Blackbourn
a80aeeb5dc Users: There is not, in fact, 12345 users on every WordPress installation.
Props spacedmonkey

See #38741


git-svn-id: https://develop.svn.wordpress.org/trunk@41614 602fd350-edb4-49c9-b593-d223f7449a82
2017-09-27 13:06:37 +00:00
John Blackbourn
1507df9d59 Users: Introduce the concept of a large site in order to speed up the Users screen when there are many users.
Calling the `count_users()` function is expensive, regardless of the counting strategy that's used, and it gets
slower the more users there are on a site. In order to speed up the Users screen in the admin area, calling
`count_users()` can be avoided entirely while still displaying the total count for users.

This introduces some new functions:

* `wp_is_large_user_count()`
* `wp_get_active_user_count()`
* `wp_update_active_user_count()`

A corresponding `wp_is_large_user_count` filter is also introduced.

Props tharsheblows, johnbillion

Fixes #38741


git-svn-id: https://develop.svn.wordpress.org/trunk@41613 602fd350-edb4-49c9-b593-d223f7449a82
2017-09-27 13:03:03 +00:00
Weston Ruter
df1bf4a883 Customize: Add wp_is_uuid() validation function with optional second $version=4 parameter to enforce v4 random UUIDs.
Props jonathanbardo.
Fixes #39778.


git-svn-id: https://develop.svn.wordpress.org/trunk@41388 602fd350-edb4-49c9-b593-d223f7449a82
2017-09-18 23:03:06 +00:00
Felix Arntz
e23004c344 Multisite: Introduce get_main_site_id().
This function can be used to easily get the main site ID of a given network via the optional `$network_id` parameter, which defaults to the current network. The existing `is_main_site()` now uses the new function internally and now accepts an optional `$network_id` parameter as well.

The main purpose of the new function at this point is to ensure that the `WP_Network::$blog_id` property is always set. Magic getters in the class have been adjusted to auto-fill the property when it is accessed and empty. Furthermore the function encapsulates logic that was previously part of `ms_load_current_site_and_network()` and has been replaced with a call to the function now.

Props spacedmonkey, jeremyfelt, johnjamesjacoby, flixos90.
Fixes #29684.


git-svn-id: https://develop.svn.wordpress.org/trunk@41380 602fd350-edb4-49c9-b593-d223f7449a82
2017-09-15 11:14:49 +00:00
Peter Wilson
14f9c47685 General: Remove error screen padding for Internet Explorer.
The inline styles added to the `wp_die()` handler since [18534] increase file size of the error screen enough to prevent Internet Explorer from displaying a generic error page.

Props rfair404.
Fixes #37551.



git-svn-id: https://develop.svn.wordpress.org/trunk@41369 602fd350-edb4-49c9-b593-d223f7449a82
2017-09-11 05:30:34 +00:00
John Blackbourn
8df2151660 General: Improve terminology used when referring to installations of WordPress and its extensions.
"Install" is not a noun, and while it might be acceptable to use the verb as a noun, it is not correct. Using the correct
noun, "installation", increases clarity, especially for non-native English speakers.

This change fixes the usage in user-facing text and in developer documentation.

Fixes #41620


git-svn-id: https://develop.svn.wordpress.org/trunk@41289 602fd350-edb4-49c9-b593-d223f7449a82
2017-08-22 11:51:11 +00:00
Weston Ruter
b4a8af7e35 Customize: Prevent _delete_option_fresh_site() from hitting DB if fresh_site flag already cleared.
Amends [38991].
Props dlh, westonruter.
Fixes #41039.


git-svn-id: https://develop.svn.wordpress.org/trunk@41244 602fd350-edb4-49c9-b593-d223f7449a82
2017-08-13 00:56:24 +00:00
John Blackbourn
be97d71a94 Formatting: Add the $number and $decimals arguments to the number_format_i18n filter.
Props alpipego

Fixes #41505


git-svn-id: https://develop.svn.wordpress.org/trunk@41199 602fd350-edb4-49c9-b593-d223f7449a82
2017-08-01 14:37:39 +00:00
John Blackbourn
5d23532956 Options, Meta APIs: Fix a typo introduced in [41164].
See #39117


git-svn-id: https://develop.svn.wordpress.org/trunk@41167 602fd350-edb4-49c9-b593-d223f7449a82
2017-07-27 03:11:10 +00:00
John Blackbourn
620eed0cc2 Options, Meta APIs: Send a notification to the old admin email address when the site admin email or network admin email address is changed.
This reduces the chances of a site compromise going unnoticed, in the same way that the same notifications for user account email address changes reduces the chances of a user account compromise going unnoticed.

Props MatheusGimenez, johnbillion

Fixes #39117


git-svn-id: https://develop.svn.wordpress.org/trunk@41164 602fd350-edb4-49c9-b593-d223f7449a82
2017-07-27 02:23:26 +00:00
Sergey Biryukov
668d465aa3 Docs: Add @staticvar entries for $cache and $tested_paths in wp_upload_dir().
Props ajayghaghretiya1.
Fixes #41395.

git-svn-id: https://develop.svn.wordpress.org/trunk@41113 602fd350-edb4-49c9-b593-d223f7449a82
2017-07-21 10:14:09 +00:00
Sergey Biryukov
cf4b8bc85f Docs: Fix typo in wp_suspend_cache_invalidation() description.
Props euthelup, milana_cap.
Fixes #41301.

git-svn-id: https://develop.svn.wordpress.org/trunk@41031 602fd350-edb4-49c9-b593-d223f7449a82
2017-07-12 21:25:20 +00:00
Sergey Biryukov
44d162d0b2 Docs: Add a @global entry for $post variable in wp_post_preview_js().
Props avinapatel.
Fixes #41194.

git-svn-id: https://develop.svn.wordpress.org/trunk@40959 602fd350-edb4-49c9-b593-d223f7449a82
2017-06-28 12:54:31 +00:00
Sergey Biryukov
cf9d667583 I18N: Add @global entry for $wp_locale in wp_maybe_decline_date().
Props Dency.
Fixes #41046.

git-svn-id: https://develop.svn.wordpress.org/trunk@40911 602fd350-edb4-49c9-b593-d223f7449a82
2017-06-15 12:23:55 +00:00
Joe McGill
04e3680d1c Media: Improve handling of non-image files in wp_get_image_mime.
This prevents non-image fileypes from returning a mime type of
"application/octet-stream" when `exif_imagetype()` returns `false`.

Props blobfolio.
Fixes #40017.


git-svn-id: https://develop.svn.wordpress.org/trunk@40397 602fd350-edb4-49c9-b593-d223f7449a82
2017-04-09 22:43:04 +00:00
Joe McGill
7684a241b3 Media: Reduce failing uploads following 4.7.1.
[39831] introduced more strict MIME type checking for uploads, which
resulted in unintetionally blocking several filetypes that were
previously valid. This change uses  a more targeted approach to MIME
validation to restore previous behavior for most types.

Props blobfolio, iandunn, ipstenu, markoheijnen, xknown, joemcgill.
Fixes #39550, #39552.

git-svn-id: https://develop.svn.wordpress.org/trunk@40124 602fd350-edb4-49c9-b593-d223f7449a82
2017-02-25 16:07:25 +00:00
Sergey Biryukov
0b63252b2d Media: In wp_unique_filename(), use explicit type casting when incrementing $number.
This prevents the "non-numeric value encountered" warning in PHP 7.1, caused by trying to increment an empty string on the first loop iteration.

Props drrobotnik for initial patch.
Fixes #39774.



git-svn-id: https://develop.svn.wordpress.org/trunk@40039 602fd350-edb4-49c9-b593-d223f7449a82
2017-02-03 20:57:38 +00:00
Peter Wilson
99a101ff27 Feeds: Prevent empty feeds from returning 404 errors.
Partial revert of [38929].

This reverts the source code from the commit for #30210 to prevent valid but empty feeds from returning 404 file not found errors for the home and custom feeds.

The tests in the commit that remain applicable are retained.

Props pavelevap for reporting, stevenkword for initial patch.
See #30210.
Fixes #39157.


git-svn-id: https://develop.svn.wordpress.org/trunk@40030 602fd350-edb4-49c9-b593-d223f7449a82
2017-01-29 23:08:54 +00:00
Sergey Biryukov
e6ae5711e5 Docs: Add missing @param type for wp_cache_get_last_changed().
Props afzalmultani, Soean.
Fixes #39571.

git-svn-id: https://develop.svn.wordpress.org/trunk@39900 602fd350-edb4-49c9-b593-d223f7449a82
2017-01-13 14:15:22 +00:00
Sergey Biryukov
d788c3ffed Media: Use a consistent error message for file type errors on uploading.
Props pavelevap, jackreichert.
Fixes #33242.

git-svn-id: https://develop.svn.wordpress.org/trunk@39891 602fd350-edb4-49c9-b593-d223f7449a82
2017-01-12 06:28:32 +00:00
Joe McGill
9d9ab96249 Media: Fix exif_imagetype check in wp_get_image_mime
This is a follow up to [39831].

Props gitlost.
See #11946.

git-svn-id: https://develop.svn.wordpress.org/trunk@39850 602fd350-edb4-49c9-b593-d223f7449a82
2017-01-11 16:35:21 +00:00
Joe McGill
7710b3d3ec Media: Improve image filetype checking.
This adds a new function `wp_get_image_mime()` which is used by
`wp_check_filetype_and_ext()` to validate image files using
`exif_imagetype()` if available instead of `getimagesize()`.

`getimagesize()` is less performant than `exif_imagetype()` and is
dependent on GD. If `exif_imagetype()` is not available, it falls back to
`getimagesize()` as before.

If `wp_check_filetype_and_ext()` can't validate the filetype, we now return
`false` for ext/MIME values.

See #11946.

git-svn-id: https://develop.svn.wordpress.org/trunk@39831 602fd350-edb4-49c9-b593-d223f7449a82
2017-01-11 13:07:54 +00:00
John Blackbourn
8512036e4e Docs: Misc corrections and additions to inline documentation.
See #39130
Props keesiemeijer


git-svn-id: https://develop.svn.wordpress.org/trunk@39639 602fd350-edb4-49c9-b593-d223f7449a82
2016-12-27 09:27:38 +00:00
John Blackbourn
5f645d2f34 Docs: Add and correct @since docs for a variety of functions and methods.
Props keesiemeijer, chris_dev
Fixes #39343, #39357, #39344
See #39130


git-svn-id: https://develop.svn.wordpress.org/trunk@39638 602fd350-edb4-49c9-b593-d223f7449a82
2016-12-27 09:20:11 +00:00
John Blackbourn
f6f0e6098d I18n: Begin introducing translator comments for strings which include placeholders but no accompanying translator comment.
Adds context to one string used in two different contexts for the new user and new site signup email notification.

More to come.

See #38882


git-svn-id: https://develop.svn.wordpress.org/trunk@39323 602fd350-edb4-49c9-b593-d223f7449a82
2016-11-21 01:21:01 +00:00
Sergey Biryukov
bc11236b4c I18N: Use 'WordPress hook name' instead of 'PHP hook name' in translator comments added in [39315].
See #38862.

git-svn-id: https://develop.svn.wordpress.org/trunk@39316 602fd350-edb4-49c9-b593-d223f7449a82
2016-11-19 02:43:49 +00:00
Sergey Biryukov
b706194ec3 I18N: Add translator comments for strings in _deprecated_*() functions.
See #38862.

git-svn-id: https://develop.svn.wordpress.org/trunk@39315 602fd350-edb4-49c9-b593-d223f7449a82
2016-11-19 02:38:16 +00:00
Pascal Birchler
b0aad156bb I18N: Show available timezones in the user's locale on the settings screen.
Adds a `$locale` parameter to `wp_timezone_choice()` to only reload translations when necessary.

Props yale01.
See #38485.

git-svn-id: https://develop.svn.wordpress.org/trunk@39068 602fd350-edb4-49c9-b593-d223f7449a82
2016-11-01 09:15:42 +00:00
Weston Ruter
630fd305fc Customize: Introduce starter content and site freshness state.
A theme can opt-in for tailored starter content to apply to the customizer when previewing the theme on a fresh install, when `fresh_site` is at its initial `1` value. Starter content is staged in the customizer and does not go live unless the changes are published. Initial starter content is added to Twenty Seventeen.

* The `fresh_site` flag is cleared when a published post or page is saved, when widgets are modified, or when the customizer state is saved.
* Starter content is registered via `starter-content` theme support, where the argument is an array containing `widgets`, `posts`, `nav_menus`, `options`, and `theme_mods`. Posts/pages in starter content are created with the `auto-draft` status, re-using the page/post stubs feature added to nav menus and the static front page controls.
* A `get_theme_starter_content` filter allows for plugins to extend a theme's starter content.
* Starter content in themes can/should re-use existing starter content items in core by using named placeholders.
* Import theme starter content into customized state when fresh site.
* Prevent original_title differences from causing refreshes if title is present.
* Ensure nav menu item url is set according to object when previewing.
* Make sure initial saved state is false if there are dirty settings without an existing changeset.
* Ensure dirty settings are cleaned upon changeset publishing.

Props helen, westonruter, ocean90.
Fixes #38114, #38533.


git-svn-id: https://develop.svn.wordpress.org/trunk@38991 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-28 02:56:16 +00:00
John Blackbourn
0dff84ad23 Formatting: Don't overwrite the status header for Ajax responses that use output buffering or otherwise set their headers early.
Fixes #35666


git-svn-id: https://develop.svn.wordpress.org/trunk@38956 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-26 14:31:33 +00:00
John Blackbourn
895203b3e4 Feeds: Don't attempt to generate RSS feeds for invalid feed URLs such as wp-content/feed.
Props stevenkword, JRGould, lyubomir_popov, johnbillion
Fixes #30210


git-svn-id: https://develop.svn.wordpress.org/trunk@38929 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-25 21:53:22 +00:00
Dominik Schilling (ocean90)
ad25902a65 General: Introduce a wp_list_sort() helper function, v2.
In addition to `wp_list_filter()` for filtering a list of objects, and `wp_list_pluck()` for plucking a certain field out of each object in a list, this new function can be used for sorting a list of objects by specific fields. These functions are now all contained within the new `WP_List_Util()` class and `wp_list_sort()` is used in various parts of core for sorting lists.

This was previously committed in [38859] but got reverted in [38862] and [38863]. To fix the previous issues, `wp_list_sort()` supports now an additional argument to preserve array keys via `uasort()`.

Props flixos90, DrewAPicture, jorbin.
Fixes #37128.

git-svn-id: https://develop.svn.wordpress.org/trunk@38928 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-25 21:25:25 +00:00
John Blackbourn
f948218d0f General: Correct the docs for the default HTTP status code used by wp_die().
See #37770


git-svn-id: https://develop.svn.wordpress.org/trunk@38884 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-24 13:12:52 +00:00
Dominik Schilling (ocean90)
ef43d7b0fa Revert [38859] due to an incomplete implementation.
See https://core.trac.wordpress.org/ticket/37128#comment:27.
See #37128.

git-svn-id: https://develop.svn.wordpress.org/trunk@38863 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-21 17:00:29 +00:00
Pascal Birchler
e4cbb7d031 General: Introduce a wp_list_sort() helper function.
In addition to `wp_list_filter()` for filtering a list of objects, and `wp_list_pluck()` for plucking a certain field out of each object in a list, this new function can be used for sorting a list of objects by specific fields. These functions are now all contained within the new `WP_List_Util()` class and `wp_list_sort()` is used in various parts of core for sorting lists.

Props flixos90, DrewAPicture, jorbin.
Fixes #37128.

git-svn-id: https://develop.svn.wordpress.org/trunk@38859 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-21 11:11:42 +00:00
Aaron Jorbin
a8aa7b0ca2 Cache API: introduce wp_cache_get_last_changed to improve DRY
One thing fairly common to the cache groups is a block of code to look to see when the cache was last changed, and if there isn't one, to set it for the current microtime(). It appears in 8 different places in core. This adds a new helper `wp_cache_get_last_changed` to DRY things up a bit.

Since `wp-includes/cache.php` isn't guaranteed to be loaded, this new function is in `wp-includes/functions.php`

Props spacedmonkey, desrosj.
Fixes #37464.



git-svn-id: https://develop.svn.wordpress.org/trunk@38849 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-21 02:53:19 +00:00
Rachel Baker
ede099a704 REST API: Introduce the Content API endpoints.
REST API endpoints for your WordPress content. These endpoints provide machine-readable external access to your WordPress site with a clear, standards-driven interface, allowing new and innovative apps for interacting with your site. These endpoints support all of the following:
- Posts: Read and write access to all post data, for all types of post-based data, including pages and media.
- Comments: Read and write access to all comment data. This includes pingbacks and trackbacks.
- Terms: Read and write access to all term data.
- Users: Read and write access to all user data. This includes public access to some data for post authors.
- Meta: Read and write access to metadata for posts, comments, terms, and users, on an opt-in basis from plugins.
- Settings: Read and write access to settings, on an opt-in basis from plugins and core. This enables API management of key site content values that are technically stored in options, such as site title and byline.

Love your REST API, WordPress!  The infrastructure says, "Let's do lunch!" but the content API endpoints say, "You're paying!"

Props rmccue, rachelbaker, danielbachhuber, joehoyle, adamsilverstein, afurculita, ahmadawais, airesvsg, alisspers, antisilent, apokalyptik, artoliukkonen, attitude, boonebgorges, bradyvercher, brianhogg, caseypatrickdriscoll, chopinbach, chredd, christianesperar, chrisvanpatten, claudiolabarbera, claudiosmweb, cmmarslender, codebykat, coderkevin, codfish, codonnell822, daggerhart, danielpunkass, davidbhayes, delphinus, desrosj, dimadin, dotancohen, DrewAPicture, Dudo1985, duncanjbrown, eherman24, eivhyl, eliorivero, elyobo, en-alis, ericandrewlewis, ericpedia, evansobkowicz, fjarrett, frozzare, georgestephanis, greatislander, guavaworks, hideokamoto, hkdobrev, hubdotcom, hurtige, iandunn, ircrash, ironpaperweight, iseulde, Japh, jaredcobb, JDGrimes, jdolan, jdoubleu, jeremyfelt, jimt, jjeaton, jmusal, jnylen0, johanmynhardt, johnbillion, jonathanbardo, jorbin, joshkadis, JPry, jshreve, jtsternberg, JustinSainton, kacperszurek, kadamwhite, kalenjohnson, kellbot, kjbenk, kokarn, krogsgard, kuchenundkakao, kuldipem, kwight, lgedeon, lukepettway, mantismamita, markoheijnen, matrixik, mattheu, mauteri, maxcutler, mayukojpn, michael-arestad, miyauchi, mjbanks, modemlooper, mrbobbybryant, NateWr, nathanrice, netweb, NikV, nullvariable, oskosk, oso96_2000, oxymoron, pcfreak30, pento, peterwilsoncc, Pezzab, phh, pippinsplugins, pjgalbraith, pkevan, pollyplummer, pushred, quasel, QWp6t, schlessera, schrapel, Shelob9, shprink, simonlampen, Soean, solal, tapsboy, tfrommen, tharsheblows, thenbrent, tierra, tlovett1, tnegri, tobych, Toddses, toro_unit, traversal, vanillalounge, vishalkakadiya, wanecek, web2style, webbgaraget, websupporter, westonruter, whyisjake, wonderboymusic, wpsmith, xknown, zyphonic.
Fixes #38373.

git-svn-id: https://develop.svn.wordpress.org/trunk@38832 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-20 02:54:12 +00:00
Jeremy Felt
2979167ba7 Multisite: Use get_network() and get_current_network_id() for current network data.
`get_network()` falls back to the current network when called without any arguments. Between this and `get_current_network_id()`, we can replace almost all instances of the global `$current_site` and all instances of `get_current_site()`.

This effectively deprecates `get_current_site()`, something that we'll do in a future ticket.

Props flixos90.
Fixes #37414.


git-svn-id: https://develop.svn.wordpress.org/trunk@38814 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-19 04:46:14 +00:00
Weston Ruter
83b059aa19 Customize: Implement customized state persistence with changesets.
Includes infrastructure developed in the Customize Snapshots feature plugin.

See https://make.wordpress.org/core/2016/10/12/customize-changesets-technical-design-decisions/

Props westonruter, valendesigns, utkarshpatel, stubgo, lgedeon, ocean90, ryankienstra, mihai2u, dlh, aaroncampbell, jonathanbardo, jorbin.
See #28721.
See #31089.
Fixes #30937.
Fixes #31517.
Fixes #30028.
Fixes #23225.
Fixes #34142.
Fixes #36485.


git-svn-id: https://develop.svn.wordpress.org/trunk@38810 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-18 20:04:36 +00:00
Gary Pendergast
2ba32a2d48 Charset: Allow _canonical_charset() to handle mixed-case strings.
Add improved unit tests, and collect existing unit tests together.

Props pbearne.
Fixes #38337.



git-svn-id: https://develop.svn.wordpress.org/trunk@38809 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-17 23:53:20 +00:00
Pascal Birchler
b9894d3295 Date/Time: Remove some legacy logic in date_i18n().
Since there's no difference between using `date()` and `gmdate()` in WordPress, we can simply use the former in `date_i18n()` to reduce its complexity.

Adds tests.

Props jdgrimes for initial patch.
Fixes #37910.

git-svn-id: https://develop.svn.wordpress.org/trunk@38804 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-17 08:09:11 +00:00
Dominik Schilling (ocean90)
a245ff9c54 Add 'urn' to the list of URI protocols whitelisted by default.
Props geekysoft, jorbin.
Fixes #37300.

git-svn-id: https://develop.svn.wordpress.org/trunk@38686 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-30 13:14:54 +00:00
Pascal Birchler
9e028d2fd9 Docs: Improve parameter description for wp_parse_args().
Props dimadin for initial patch.
Fixes #38167.

git-svn-id: https://develop.svn.wordpress.org/trunk@38670 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-28 08:40:24 +00:00
Jeremy Felt
2515aab673 Multisite: Revert [38388].
Restore `get_current_site()` to a multisite only function. Providing this in single site may be a possibility in the future, but should have a dedicated ticket and discussion.

See #37699.


git-svn-id: https://develop.svn.wordpress.org/trunk@38636 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-20 21:38:08 +00:00
Jeremy Felt
576a4cba5e Multisite: Use get_networks() in get_main_network_id().
The manual query for the main network ID can now be replaced with a cached `get_networks()` query. This allows us to eliminate the `primary_network_id` cache key entirely.

Props spacedmonkey.
Fixes #37218.


git-svn-id: https://develop.svn.wordpress.org/trunk@38632 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-20 18:46:52 +00:00
Sergey Biryukov
8a5002d424 Docs: Use a third-person singular verb for smilies filter added in [38504].
See #35905.

git-svn-id: https://develop.svn.wordpress.org/trunk@38608 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-14 21:52:24 +00:00
John Blackbourn
b875264a73 Formatting: Don't send an HTTP status code in wp_send_json() by default. This avoids clobbering an HTTP status code that may have been set prior to calling this function.
Props westonruter
See #35666


git-svn-id: https://develop.svn.wordpress.org/trunk@38576 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-08 13:44:32 +00:00
Drew Jaynes
e7c0b5f36c Docs: Update the $message parameter for _default_wp_die_handler() to notate that it can also accept a WP_Error object.
Additionally, update the `$message` parameter description in the DocBlock for `wp_die()` to make it explicitly clear messages derived from a passed `WP_Error` object will only be evaluated if not performing an Ajax or XML-RPC request (as both default handlers completely ignore `WP_Error` object messages).

See #37770.


git-svn-id: https://develop.svn.wordpress.org/trunk@38518 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-04 03:40:04 +00:00
Sergey Biryukov
74cee3d59c Docs: Correct @since entry for the smilies filter added in [38504].
See #35905.

git-svn-id: https://develop.svn.wordpress.org/trunk@38505 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-02 00:07:22 +00:00
Gary Pendergast
5b85aa163f Smilies: Add the smilies filter.
This new filter allows the smilies array to be modified with a filter, instead of having to directly access the global.

Props mte90, jorbin.
Fixes #35905.



git-svn-id: https://develop.svn.wordpress.org/trunk@38504 602fd350-edb4-49c9-b593-d223f7449a82
2016-09-01 23:59:59 +00:00
Scott Taylor
cba0e2c8f7 Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389.
See #36335.


git-svn-id: https://develop.svn.wordpress.org/trunk@38470 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-31 16:30:48 +00:00
Scott Taylor
09856f3a5c General: revert [38386], functions.php was probably too tempting for some people to not load by itself.
See #36335.


git-svn-id: https://develop.svn.wordpress.org/trunk@38469 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-31 15:23:57 +00:00
John Blackbourn
da865e68b7 Formatting: Add a parameter to wp_send_json_error(), wp_send_json_success(), and wp_send_json() for specifying the HTTP response code.
Defaults to `200` in all cases, but can be used, for example, to return a `403` when using `wp_send_json_error()`.

Fixes #35666
Props stephenharris


git-svn-id: https://develop.svn.wordpress.org/trunk@38422 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-28 17:41:25 +00:00
John Blackbourn
289581e280 Security: Return a 403 instead of a 200 HTTP status when check_ajax_referer() fails.
This is, unfortunately, untestable in the current test suite, even in the AJAX tests.

Fixes #36362


git-svn-id: https://develop.svn.wordpress.org/trunk@38421 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-28 17:30:29 +00:00
Scott Taylor
4225e71a6b 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@38411 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-27 22:31:11 +00:00
Dion Hulse
e353179ce5 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


git-svn-id: https://develop.svn.wordpress.org/trunk@38402 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-27 14:36:42 +00:00
Scott Taylor
388690382c 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@38399 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-27 09:15:01 +00:00
Scott Taylor
55f5577813 Multisite: move get_current_site() to load.php so that it can be used in more places, instead of importing global $current_site.
See #37699.


git-svn-id: https://develop.svn.wordpress.org/trunk@38388 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-26 21:34:36 +00:00
Scott Taylor
3586ac294f Bootstrap: load option.php in wp-settings.php, not in functions.php.
See #36335.


git-svn-id: https://develop.svn.wordpress.org/trunk@38386 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-26 21:10:30 +00:00
Andrew Ozz
861bdc722f TinyMCE: fix toolbars alignment in RTL.
Fixes #37760 for trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@38349 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-25 01:19:24 +00:00
Sergey Biryukov
5ae7139efa I18N: Add translator comments for strings in wp-includes/functions.php.
Props ramiy.
Fixes #37802.

git-svn-id: https://develop.svn.wordpress.org/trunk@38344 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-23 23:47:28 +00:00
Scott Taylor
3aee745492 AJAX: add a new function, wp_doing_ajax(), which can replace... (wait for it...) DOING_AJAX checks via the constant.
Props Mte90, sebastian.pisula, swissspidy.
Fixes #25669.


git-svn-id: https://develop.svn.wordpress.org/trunk@38334 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-23 14:32:18 +00:00
Scott Taylor
0774c039f4 General: remove variable set needlessly in wp_check_jsonp_callback().
See #37771.


git-svn-id: https://develop.svn.wordpress.org/trunk@38308 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-22 20:50:31 +00:00
Scott Taylor
d911ef44dc Media: when calling pathinfo(), also pass a PATHINFO_* constant to avoid array notices for unset keys.
Props JaworskiMatt.
Fixes #37608.


git-svn-id: https://develop.svn.wordpress.org/trunk@38294 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-20 23:35:50 +00:00
Helen Hou-Sandi
1e21bf9bf7 System fonts: Don't quote single-word font names, per our coding standards.
props ocean90, netweb.
see #36753.


git-svn-id: https://develop.svn.wordpress.org/trunk@38152 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-26 16:38:49 +00:00
Drew Jaynes
c750ff2d3c Docs: Fix formatting, tense, verb conjugation, and other syntax for wp-includes/* elements introduced or changed in 4.6.
Part 1/2.

See #37318.


git-svn-id: https://develop.svn.wordpress.org/trunk@38121 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-20 16:56:21 +00:00
Jeremy Felt
4f2008a104 Meta: Remove object subtype handling from register_meta().
Registration is now based solely on object type, which allows the code around this to be simplified significantly.

In the process of making this adjustment:

* `register_meta()`, `unregister_meta_key()`, `get_registered_metadata()`, and `registered_meta_key_exists()` no longer return `WP_Error` objects.
* The recently introduced `wp_object_type_exists()` function and the restriction on object type has been removed.

Note: No guarantee of uniqueness is made across object subtypes. Registered meta keys should be uniquely prefixed to avoid conflict.

Fixes #35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@38095 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-18 21:15:37 +00:00
John Blackbourn
a501d6c8be Meta: Add a missing @since param for wp_object_type_exists().
See #35658


git-svn-id: https://develop.svn.wordpress.org/trunk@38038 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-12 13:20:55 +00:00
Drew Jaynes
5cf0ef170a Docs: Standardize capitalization of Ajax throughout core documentation per the core spelling guide.
Ajax, while considered an acronym for Asynchronous JavaScript and XML, is most commonly capitalized only in the first character.

Part props ocean90.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@38028 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-10 00:50:21 +00:00
Dominik Schilling
c68f1ec772 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.

git-svn-id: https://develop.svn.wordpress.org/trunk@38015 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-08 14:36:37 +00:00
Helen Hou-Sandi
495ff0c633 Meta: Make registration error conditions return consistently.
In doing this, non-core object types are no longer forcibly blocked and are instead checked against `wp_object_type_exists()` which has a filterable return value. Still, filter that at your own risk.

props Faison for the initial patch.
see 35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37991 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 18:08:55 +00:00
Sergey Biryukov
920f29616a 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.

git-svn-id: https://develop.svn.wordpress.org/trunk@37985 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 12:39:01 +00:00
Sergey Biryukov
eb176b40b8 I18N: Adjust the regex in wp_maybe_decline_date() to avoid \w and \b, as they don't work with Unicode characters correctly in PHP 5.3.3 and earlier versions.
See [37975] for unit tests.

See #36790.

git-svn-id: https://develop.svn.wordpress.org/trunk@37979 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 21:42:06 +00:00
Dominik Schilling
c259f4c35d General: Return "O B" when passing 0 to size_format().
Props swissspidy.
Fixes #36635.

git-svn-id: https://develop.svn.wordpress.org/trunk@37962 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 10:35:24 +00:00
Gary Pendergast
b3a6124e3d General: Remove the Pragma header from responses.
`Pragma` is supposed to be a request header, but we've been including it in responses since the beginning of time.

This is a relic dating all the way back to b2, probably originally added because Internet Explorer version 5 and earlier didn't understand the `Cache-Control` header in responses, but they did (incorrectly) obey the `Pragma` header.

Internet Explorer 6 and 7 will obey the `Pragma` response header only if no other cache-related response headers are present (in our case, they are always present), and all other browsers ignore the `Pragma` response header.

Props geekysoft.
Fixes #37250.



git-svn-id: https://develop.svn.wordpress.org/trunk@37944 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-04 04:01:19 +00:00
Jeremy Felt
bba8b1271f Docs: Remove duplicate text for is_main_site() parameter.
Props Kenshino.
Fixes #37241.


git-svn-id: https://develop.svn.wordpress.org/trunk@37932 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 17:16:03 +00:00
Boone Gorges
c97f234e6f Allow action and filter hooks to be deprecated.
When a filter or action hook is deprecated, the corresponding `apply_filters()`
or `do_action()` calls should be switched out with `apply_filters_deprecated()`
or `do_action_deprecated()`. The latter functions will throw a deprecation
before invoking the original hook.

Props solarissmoke, SergeyBiryukov, DrewAPicture.
Fixes #10441.

git-svn-id: https://develop.svn.wordpress.org/trunk@37861 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-25 19:56:19 +00:00
Sergey Biryukov
89304a579f I18N: Adjust the regex in wp_maybe_decline_date() to handle word boundaries correctly.
Props semil.
Fixes #36790.

git-svn-id: https://develop.svn.wordpress.org/trunk@37717 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-15 17:44:45 +00:00
SergeyBiryukov
aea4c0d86a In size_format() and wp_convert_bytes_to_hr(), replace kB with KB for consistency with other units.
Props Presskopp, dashaluna.
Fixes #37037.

git-svn-id: https://develop.svn.wordpress.org/trunk@37702 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-14 21:40:02 +00:00
Jeremy Felt
2b2dde968b Login: Fire wp_no_robots() in wp_die() only if function exists.
This covers cases where `wp_die()` is used before `general-template.php` is loaded.

Fixes #34401.


git-svn-id: https://develop.svn.wordpress.org/trunk@37689 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-12 00:33:27 +00:00
Drew Jaynes
831a186108 Boostrap: Move is_ssl() to wp-includes/load.php.
Moving to load.php introduces parity with other commonly evaluated `is_*()` functions such as `is_admin()` or `is_multisite()`.  It also makes `is_ssl()` available much earlier in the loading process, such as for use in drop-ins like advanced-cache.php.

Props johnjamesjacoby.
Fixes #35844.


git-svn-id: https://develop.svn.wordpress.org/trunk@37677 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-10 18:55:33 +00:00
Peter Wilson
db0195c936 DOCS: Replace HTTP links with HTTPS.
Replaces unsecure links in documentation and translator comments with their secure versions.

Props johnpgreen, netweb

Fixes #36993


git-svn-id: https://develop.svn.wordpress.org/trunk@37674 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-10 04:49:09 +00:00
Jeremy Felt
15a12ce4f0 Multisite: Introduce get_current_network_id()
Similar to `get_current_blog_id`, this can be used to get the ID of the `$current_site` global. If not available, it will fallback to the main network ID. In single site, this will return 1.

Props spacedmonkey, flixos90.
Fixes #33900.


git-svn-id: https://develop.svn.wordpress.org/trunk@37670 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-09 20:33:35 +00:00
Rachel Baker
0c990ffb73 Users: Stop WP_List_Table notices from persisting on pagination navigation.
Adds the keyboard navigation query vars to `wp_removable_query_args()` and passes the results of said function to remove_query_var() inside the WP_List_Table pagination method.

Props EFAREM for the initial patch.
Fixes #35620.

git-svn-id: https://develop.svn.wordpress.org/trunk@37663 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-09 01:55:40 +00:00
Rachel Baker
25c3618138 REST API: Create the general wp_check_jsonp_callback() function for validating JSONP callback functions.
Move the REST API JSONP callback validation check into a separate function named `wp_check_jsonp_callback()`. This allows plugins to use the built-in validation when handling JSONP callbacks.
Extremely Important Note: If you send JSONP in your custom response, make sure you prefix the response with `/**/`. This will mitigate the Rosetta Flash exploit. You should also send the `X-Content-Type-Options:nosniff` header, or even better, use the REST API infrastructure.

Props rmccue.
Fixes #28523.

git-svn-id: https://develop.svn.wordpress.org/trunk@37646 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-06 21:33:30 +00:00
Drew Jaynes
194583a770 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@37543 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-23 19:00:41 +00:00
Drew Jaynes
39908cb2bb Docs: Standardize filter docs in wp-includes/functions.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.


git-svn-id: https://develop.svn.wordpress.org/trunk@37510 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-22 18:35:24 +00:00
Ryan McCue
bd49bb180e REST API: Use prepared JSON data correctly.
This was modifying a variable that was never used. Oops.

Fixes #36358.
Props jrf.


git-svn-id: https://develop.svn.wordpress.org/trunk@37444 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-17 03:54:37 +00:00
Drew Jaynes
195572596b Docs: Standardize on 'backward compatibility/compatible' nomenclature in core inline docs.
Also use 'back-compat' in some inline comments where backward compatibility is the subject and shorthand feels more natural.

Note: 'backwards compatibility/compatibile' can also be considered correct, though it's primary seen in regular use in British English.

Props ocean90.
Fixes #36835.


git-svn-id: https://develop.svn.wordpress.org/trunk@37431 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-13 18:40:19 +00:00
Helen Hou-Sandi
0671f3a8d3 Drop Open Sans in the admin in favor of system fonts.
Rejoice, for your admins will feel more native to your surrounding computing environment and likely load faster, especially when offline, as they no longer have to talk to The Google Overlord.

At the time of introduction in 3.8, there were not good system fonts common to all platforms at the time. In the years since, Windows, Android, OS X, iOS, Firefox OS, and various flavors of Linux have all gotten their own (good) system UI fonts.

There will definitely be visual bugs, mainly around alignment and spacing; these should be documented and reported on the ticket and fixed more atomically so that our current and future selves have a better understanding of what happened and why.

The style remains registered, as it is almost certainly in use by themes and plugins.

props mattmiklic.
see #36753.


git-svn-id: https://develop.svn.wordpress.org/trunk@37361 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-04 22:06:27 +00:00
Drew Jaynes
c7bed4f8c6 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@37342 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-02 03:59:56 +00:00
Gary Pendergast
74e88010c0 Emoji: The :roll: smiley is now an emoji.
Unicode 8 added `U+1F644`, "Face with Rolling Eyes", which matches our `:roll:` smiley. Continuing our ever present quest to rid the world of legacy smilies, we now translate that smiley into its emoji form.

Sadly, `:mrgreen:` remains sorely under-represented in the Unicode standard, I'm inclined to think that we should buy a voting membership of the Unicode Consortium, in order to rectify that situation. (Personally, I'm hoping for a green skin tone modifier.)

Fixes #36365.
 



git-svn-id: https://develop.svn.wordpress.org/trunk@37296 602fd350-edb4-49c9-b593-d223f7449a82
2016-04-22 06:28:51 +00:00
Dominik Schilling (ocean90)
8be6905a89 Media: Don't cache the results of wp_mkdir_p() in a persistent cache.
To improve the performance of `wp_upload_dir()` the result of `wp_mkdir_p()` was stored in a persistent cache, introduced in [36565]. But this becomes an issue when WordPress is scaled horizontally. You may end up caching a value for a server where the directory doesn't exist which will prevent further uploads on other servers because of the persistent cache.
The fix is to use a non-persistent cache.

Props azaozz, ocean90.
See #34359.
Fixes #36621.

git-svn-id: https://develop.svn.wordpress.org/trunk@37285 602fd350-edb4-49c9-b593-d223f7449a82
2016-04-21 19:57:03 +00:00
John Blackbourn
6fe6d25f01 Add noindexing to the default wp_die() handler to avoid unnecessary crawl errors in web search engines.
Fixes #34401
Props rodrigosprimo


git-svn-id: https://develop.svn.wordpress.org/trunk@37210 602fd350-edb4-49c9-b593-d223f7449a82
2016-04-15 02:04:54 +00:00
Boone Gorges
26a5e78d94 Improve testability and coverage of wp_ext2type().
* Following pattern of `wp_get_mime_types()`, introduce `wp_get_ext_types()` function. New function returns a filtered list of file types with their extensions.
* Use this function in new tests for `wp_ext2type()`.

Props borgesbruno.
Fixes #35987.

git-svn-id: https://develop.svn.wordpress.org/trunk@37189 602fd350-edb4-49c9-b593-d223f7449a82
2016-04-13 03:11:25 +00:00
Drew Jaynes
89cfbe98f1 Docs: Improve DocBlock syntax for wp_get_upload_dir(), introduced in [36565].
See #34359. See #35986.


git-svn-id: https://develop.svn.wordpress.org/trunk@36925 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-10 03:37:43 +00:00
Dion Hulse
8d9b0a9d22 Filesystem: Support Windows shares/DFS roots in wp_normalize_path().
Props rilwis for initial patch.
Fixes #35996.


git-svn-id: https://develop.svn.wordpress.org/trunk@36881 602fd350-edb4-49c9-b593-d223f7449a82
2016-03-08 05:59:45 +00:00
Sergey Biryukov
cab3a242f7 Docs: Correct $number type in number_format_i18n().
Props salcode.
Fixes #35893.

git-svn-id: https://develop.svn.wordpress.org/trunk@36644 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-23 18:43:47 +00:00
Andrew Ozz
2dc9766688 In wp_upload_dir() do not cache error from wp_mkdir_p() when a directory cannot be created. Keep trying to create the dirs. This happens mostly in file upload context.
See #34359.

git-svn-id: https://develop.svn.wordpress.org/trunk@36628 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-23 15:57:23 +00:00
Andrew Ozz
bb49a958d2 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.

git-svn-id: https://develop.svn.wordpress.org/trunk@36569 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-18 00:23:04 +00:00
Andrew Ozz
c7936b8785 Improve the performance of wp_upload_dir():
- Cache the output in non-persistent cache.
- Cache the result from `wp_mkdir_p()` in persistent cache (when present).
- Introduce `wp_get_upload_dir()` for use when not uploading files. It is equivalent to `wp_upload_dir()` but does not check for the existence or create the upload directory.
- Change tests to use the non-cached `_wp_upload_dir()`. They change options on the fly (should never be used in production) to simulate different environments.
- Introduce `_upload_dir_no_subdir()` and `_upload_dir_https()` to facilitate testing. These use the proper `upload_dir` filter to simulate different environments.

Props kovshenin, azaozz.
See #34359.

git-svn-id: https://develop.svn.wordpress.org/trunk@36565 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-17 22:51:01 +00:00
Dominik Schilling (ocean90)
a440256da0 Introduce a $parent_class parameter for _deprecated_constructor().
Use the parameter for the deprecated constructor warning in `WP_Widget` to provide an indication to which widget is using the PHP4 style constructor.

Props sebastian.pisula.
Fixes #33440.

git-svn-id: https://develop.svn.wordpress.org/trunk@36541 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-16 23:19:38 +00:00
Drew Jaynes
1c80e8ca46 Docs: Make a couple of minor improvements to the DocBlock for wp_get_raw_referer(), introduced in [36266].
* Uses a third-person singular verb in the summary
* Makes the return types more specific with `string|false` vs `string|bool`.

See #27152. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36500 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 08:08:48 +00:00
Eric Andrew Lewis
27361e6ffe Networks and sites: Replace "blog" usage with "site" in docs.
Multisite functions use the term "blog" to refer to what we now call a "site," e.g. `get_current_blog_id()`. These functions are here to stay because of our commitment to backwards compatibility. What we can do is set the documentation straight.

See #35417.


git-svn-id: https://develop.svn.wordpress.org/trunk@36417 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-28 03:50:26 +00:00
Ella Iseulde Van Dorpe
70430c8076 Emoji: adjust $wpsmiliestrans
Swap simple-smile.png with SLIGHTLY SMILING FACE
and frownie.png with SLIGHTLY FROWNING FACE

Fixes #31710.



git-svn-id: https://develop.svn.wordpress.org/trunk@36336 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-17 22:27:52 +00:00
Pascal Birchler
053733f8c0 Filesystem API: Add a filter to wp_unique_filename().
Props SergeyBiryukov, MikeHansenMe, johnbillion, swissspidy.
Fixes #19121.

git-svn-id: https://develop.svn.wordpress.org/trunk@36310 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-15 09:38:30 +00:00
Joe Hoyle
b9e083e360 Add missing HTTP status code descriptions (specifically 308 and 421.)
Props kraftbj.
Fixes 35336.


git-svn-id: https://develop.svn.wordpress.org/trunk@36274 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-13 02:54:33 +00:00
Joe Hoyle
9a93e87d37 Add support for 451 http status code (Unavailable For Legal Reasons.)
Though this is technically still in the proposal stage, there is support from the core team and precedent in #16914

Props andizer.
Fixes #35333.


git-svn-id: https://develop.svn.wordpress.org/trunk@36273 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-13 02:48:37 +00:00
Pascal Birchler
3a358c33d3 Introduce wp_get_raw_referer() to retrieve unvalidated referer.
For things like redirects `wp_get_referer()` should be used instead.

Props voldemortensen for initial patch.
Fixes #27152.

git-svn-id: https://develop.svn.wordpress.org/trunk@36266 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-12 08:31:10 +00:00
Pascal Birchler
d92ead50c8 Ensure wp_get_referer() returns false when the referrer URL is the current URL.
Adds unit tests.

Fixes #19856.

git-svn-id: https://develop.svn.wordpress.org/trunk@36242 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-09 14:35:03 +00:00
Sergey Biryukov
27ccbb591c Docs: Clarify that wp_filter_object_list() accepts 'not' as its $operator parameter.
Props barryceelen.
See #35225.

git-svn-id: https://develop.svn.wordpress.org/trunk@36090 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-26 00:36:12 +00:00
John Blackbourn
858cf7d215 Docs: Miscellaneous docblock code quality tweaks.
See #32246


git-svn-id: https://develop.svn.wordpress.org/trunk@36074 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-23 07:52:04 +00:00
Andrea Fercia
82e5450328 Accessibility: Improvements for the Authentication Check modal dialog "Close X".
Removes the title attribute and uses a `<button>` element instead of a `<div>`.
Also simplifies the CSS and takes care of the hover/focus style.

Fixes #35142.

git-svn-id: https://develop.svn.wordpress.org/trunk@36014 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-18 23:50:13 +00:00
Andrea Fercia
e17a5cee94 Authentication modal dialog: the spinner should disappear when loading is done.
Also, when using spinners as background images, the re-painted area should be the
smallest possible one. See similar performance issue in #33311.

Fixes #34951.

git-svn-id: https://develop.svn.wordpress.org/trunk@35925 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-14 16:39:48 +00:00
Sergey Biryukov
bbce167f29 I18N: In wp_maybe_decline_date(), bail early if translation functions are not available, e.g. in SHORTINIT mode.
Fixes #34967 for trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@35880 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-12 01:41:24 +00:00
Sergey Biryukov
bfe32a4d38 I18N: Move translatable Codex URLs to separate strings in wp-includes/functions.php.
Props ramiy.
See #34687.

git-svn-id: https://develop.svn.wordpress.org/trunk@35667 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-18 17:40:43 +00:00
Sergey Biryukov
7d039b4e40 Replace 7 * DAY_IN_SECONDS with WEEK_IN_SECONDS in get_weekstartend().
Props MikeHansenMe.
Fixes #34603.

git-svn-id: https://develop.svn.wordpress.org/trunk@35556 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-06 16:36:57 +00:00
Sergey Biryukov
8cbd66ca86 Introduce wp_maybe_decline_date() for languages where certain date formats need to be declined, and hook it to the date_i18n filter.
If the locale specifies that month names require a genitive case in certain formats like `'j F Y'` or `'j. F'`, the month name will be replaced with a correct form. 

Fixes #11226.

git-svn-id: https://develop.svn.wordpress.org/trunk@35517 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-04 21:27:41 +00:00
Andrea Fercia
f25e642086 Accessibility: Improve buttons focus and links style in the install screens.
Fixes #34530.

git-svn-id: https://develop.svn.wordpress.org/trunk@35494 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-03 17:58:15 +00:00
John Blackbourn
0b05c7aa24 Add wp-post-new-reload to the list of removable query vars so it doesn't persist in the URL.
Fixes #34510


git-svn-id: https://develop.svn.wordpress.org/trunk@35460 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-30 18:05:31 +00:00
Helen Hou-Sandi
3d64414d5c wp_die(): Update colors and button styling.
see #34388, #31459.


git-svn-id: https://develop.svn.wordpress.org/trunk@35327 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-21 15:23:01 +00:00
Drew Jaynes
a28e35e462 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@35325 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-21 14:02:59 +00:00
Drew Jaynes
7972ba8126 Media: Introduce the enclosure_links filter, which makes it possible to adjust the list of audio and video enclosure links derived from post content before querying the database.
Props niallkennedy, stevenkword.
Fixes #19890.


git-svn-id: https://develop.svn.wordpress.org/trunk@35288 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-20 07:08:59 +00:00
Scott Taylor
fdd8106001 Formatting: when making unique filenames in wp_unique_filename() by adding an incrementing number, prefix it with a dash to disambiguate from files that end in numbers.
Updates unit tests.

Props mikejolley, tyxla.
Fixes #21453.


git-svn-id: https://develop.svn.wordpress.org/trunk@35276 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-20 04:04:26 +00:00
Drew Jaynes
0cb7c0bd9f Docs: Add missing descriptions for the $wpdb global in DocBlocks all the places.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@35170 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-14 23:43:10 +00:00
Sergey Biryukov
4a2184d00c Feeds: Pass the feed name to do_feed_{$feed} action.
Props johnbillion.
See #34259.

git-svn-id: https://develop.svn.wordpress.org/trunk@35115 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-13 02:43:30 +00:00
Drew Jaynes
681d100fd6 Feeds: Simplify logic for checking if the do_feed_{$feed} action is hooked to any callbacks.
See [35097] for where the aforementioned hook was renamed to actually be dynamic, thus rendering creation of the extra `$hook` variable moot.

See #34264.


git-svn-id: https://develop.svn.wordpress.org/trunk@35098 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-13 01:06:26 +00:00
Drew Jaynes
1246590769 Feeds: Adjust the do_feed_{$feed} hook name to actually be dynamic, rather than pre-storing the tag name in a variable and referencing that.
Props johnbillion.
Fixes #34264.


git-svn-id: https://develop.svn.wordpress.org/trunk@35097 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-13 01:02:47 +00:00
Sergey Biryukov
34a716709c In number_format_i18n(), check if $wp_locale is set before using it.
Props pauldewouters.
Fixes #31553.

git-svn-id: https://develop.svn.wordpress.org/trunk@35092 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-13 00:29:18 +00:00
Sergey Biryukov
724b83ab0e In do_robots(), allow crawling for admin-ajax.php, since it's often used on front-end.
Props dmchale, joostdevalk.
Fixes #33156.

git-svn-id: https://develop.svn.wordpress.org/trunk@34985 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 05:15:01 +00:00
Ryan McCue
374b39d6ba REST API: Add wp_is_numeric_array helper function
The API uses this to do special operations on list responses (used
for collections), so we need to detect whether an array is
associative or numeric-indexed.

After much discussion, the bikeshed is to be painted green and gold.

See #33982.


git-svn-id: https://develop.svn.wordpress.org/trunk@34927 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 02:13:02 +00:00
Ryan McCue
0f657d21cc REST API: Add JsonSerializable compatibility to wp_json_encode
Following on from r34845, the JsonSerializable shim needs support
on the encoding side too. _wp_json_prepare_data handles this when
we've loaded the shim.

Props chriscct7.

See #33982. 


git-svn-id: https://develop.svn.wordpress.org/trunk@34926 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 01:29:50 +00:00
John Blackbourn
b877e3c692 Add an optional $description parameter to status_header() so custom HTTP status descriptions can be provided.
Fixes #21472
Props nbachiyski, iamfriendly


git-svn-id: https://develop.svn.wordpress.org/trunk@34914 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-07 21:25:54 +00:00
Jeremy Felt
599fb50e09 Revert [34778], continue using _site_option() for the current network.
The `_network_option()` parameter order will be changing to accept `$network_id` first. The `_site_option()` functions will remain in use throughout core as our way of retrieving a network option for the current network.

See #28290.


git-svn-id: https://develop.svn.wordpress.org/trunk@34912 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-07 17:11:01 +00:00
Boone Gorges
7cfee3c41d Move wp_installing() to load.php.
Various functions in load.php need to check whether WP is in installation mode.
Let's let them.

Props adamsilverstein.
See #31130.

git-svn-id: https://develop.svn.wordpress.org/trunk@34896 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-07 03:01:27 +00:00
Scott Taylor
aac08d7735 Introduce wp_get_server_protocol() to DRY protocol parsing logic and make adding more protocols, like HTTP/2, easier.
Props johnbillion, wonderboymusic.
Fixes #34131.


git-svn-id: https://develop.svn.wordpress.org/trunk@34894 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-07 02:34:58 +00:00
Scott Taylor
5d0718497c REST API: add a utility function, mysql_to_rfc3339() to functions.php
Background:
6d0ad766ca

Props rmmcue.
See #33982.


git-svn-id: https://develop.svn.wordpress.org/trunk@34846 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-06 03:18:45 +00:00
Boone Gorges
578134d4ff Use wp_installing() instead of WP_INSTALLING constant.
The `WP_INSTALLING` constant is a flag that WordPress sets in a number of
places, telling the system that options should be fetched directly from the
database instead of from the cache, that WP should not ping wordpress.org for
updates, that the normal "not installed" checks should be bypassed, and so on.

A constant is generally necessary for this purpose, because the flag is
typically set before the WP bootstrap, meaning that WP functions are not yet
available.  However, it is possible - notably, during `wpmu_create_blog()` -
for the "installing" flag to be set after WP has already loaded. In these
cases, `WP_INSTALLING` would be set for the remainder of the process, since
there's no way to change a constant once it's defined. This, in turn, polluted
later function calls that ought to have been outside the scope of site
creation, particularly the non-caching of option data. The problem was
particularly evident in the case of the automated tests, where `WP_INSTALLING`
was set the first time a site was created, and remained set for the rest of the
suite.

The new `wp_installing()` function allows developers to fetch the current
installation status (when called without any arguments) or to set the
installation status (when called with a boolean `true` or `false`). Use of
the `WP_INSTALLING` constant is still supported; `wp_installing()` will default
to `true` if the constant is defined during the bootstrap.

Props boonebgorges, jeremyfelt.
See #31130.

git-svn-id: https://develop.svn.wordpress.org/trunk@34828 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-05 15:05:26 +00:00
John Blackbourn
96faf97a0f Adjust _default_wp_die_handler() formatting so it doesn't confuse Sublime Text's parsing and syntax highlighting.
Fixes #34135


git-svn-id: https://develop.svn.wordpress.org/trunk@34793 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-03 01:31:26 +00:00
Jeremy Felt
3c177b8c6f MS: Use *_network_option() functions throughout core.
Replaces all uses of `*_site_option()` with the corresponding "network" function.

This excludes one usage in `wp-admin/admin-footer.php` that needs more investigation.

Props spacedmonkey.
See #28290.


git-svn-id: https://develop.svn.wordpress.org/trunk@34778 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-02 19:07:23 +00:00
John Blackbourn
0058018799 Deprecate force_ssl_login(), which is simply a wrapper for force_ssl_admin() and is not used in core.
Fixes #34011


git-svn-id: https://develop.svn.wordpress.org/trunk@34700 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-29 21:27:40 +00:00
John Blackbourn
1bb2876fe6 callback is not a valid type in PHP, PSR-5, or phpDocumentor. callable should be used instead.
Fixes #34032


git-svn-id: https://develop.svn.wordpress.org/trunk@34566 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 23:57:46 +00:00
Drew Jaynes
2703af7691 Docs: Clarify the summary and optional $query parameter description for remove_query_arg().
Props johnbillion.
Fixes #33912.


git-svn-id: https://develop.svn.wordpress.org/trunk@34512 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 19:33:07 +00:00
Drew Jaynes
c406171d12 Docs: Overhaul the DocBlock for add_query_arg() to attempt to better explain the various call signatures it accepts.
Also adds a couple of in-DocBlock examples illustrating single key and value, and associative array usage. Retains the note about the unescaped return value.

Props johnbillion.
See #33912.


git-svn-id: https://develop.svn.wordpress.org/trunk@34511 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 19:31:40 +00:00
Scott Taylor
ed7d34cb13 Pass false as the 2nd argument to class_exists() to disable autoloading and to not cause problems for those who define __autoload().
Fixes #20523.


git-svn-id: https://develop.svn.wordpress.org/trunk@34348 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-20 03:51:55 +00:00
Helen Hou-Sandi
3531c0bc10 Superglobals: Revert [34059] until further notice.
see #33837.


git-svn-id: https://develop.svn.wordpress.org/trunk@34265 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-17 12:32:20 +00:00
Drew Jaynes
8c65cfc7f4 Docs: Add a reminder to the DocBlock description for add_query_arg() mentioning that the output is not escaped by default.
Props brentvr for the initial patch. (first props!)
See #33912. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34264 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-17 09:38:56 +00:00
Scott Taylor
79656b5fdd Uploader: Fire 'wp_handle_upload' in wp_upload_bits(). Thusly, the filter in wp_xmlrpc_server::mw_newMediaObject() is redundant.
Props dllh.
Fixes #33539.


git-svn-id: https://develop.svn.wordpress.org/trunk@34257 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-17 04:46:00 +00:00
Scott Taylor
166ee8674b More comment functions can accept a full object instead of comment_ID to reduce cache/db lookups.
See ##33638.



git-svn-id: https://develop.svn.wordpress.org/trunk@34129 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 21:39:46 +00:00
Dion Hulse
9555882e90 When running on windows systems, normalise the capitalisation of the drive letter for more reliable string comparisons.
Props tyxla
Fixes #33265


git-svn-id: https://develop.svn.wordpress.org/trunk@34104 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 01:58:03 +00:00
Scott Taylor
33953cb392 Introduce wp_validate_action( $action = '' ), a helper function that checks $_REQUEST for action and returns it, or empty string if not present. If $action is passed, it checks to make sure they match before returning it, or an empty string. Strings are always returned to avoid returning multiple types.
Implementing this removes 27 uses of direct superglobal access in the admin.

For more reading:
https://codeclimate.com/github/WordPress/WordPress/wp-admin/edit-comments.php

See #33837.


git-svn-id: https://develop.svn.wordpress.org/trunk@34059 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 21:07:45 +00:00
Scott Taylor
9eefbd1999 Deprecate wp_get_http() - function isn't used anywhere (apart from itself).
Props swissspidy.
Fixes #33709.


git-svn-id: https://develop.svn.wordpress.org/trunk@33969 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-09 04:25:24 +00:00
John Blackbourn
46c336e78a Introduce wp_removable_query_args(), which returns an array of single-use query variables which can be removed from a URL.
Also applies the function to the return URL when the Customizer is closed.

Fixes #32692
Props swissspidy, Mte90


git-svn-id: https://develop.svn.wordpress.org/trunk@33849 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-02 11:28:11 +00:00
Gary Pendergast
2b67add6dd When wp_json_encode() calls json_encode(), the latter will generate warnings if the string contains non-UTF-8 characters. No-one likes warnings, so we need to do something about that.
The good news is, the point of `wp_json_encode()` is to handle those non-UTF-8 characters. It'll totally just fix them up, no problem.

Anyway, we can just ignore those warnings.

Fixes #33524.



git-svn-id: https://develop.svn.wordpress.org/trunk@33747 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-26 03:25:15 +00:00
Scott Taylor
3b8c5529cb foreach is a statement, not a function.
See #33491.


git-svn-id: https://develop.svn.wordpress.org/trunk@33734 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-25 20:27:56 +00:00
Drew Jaynes
9bfee68719 Fix inline documentation syntax for a few general-purpose functions and hooks added in 4.3.
* `_deprecated_constructor()` See [32989]
* `deprecated_constructor_trigger_error` See [32989]
* `get_main_network_id()` See [32775]
* `wp_post_preview_js()` See [32809]

See #32891.


git-svn-id: https://develop.svn.wordpress.org/trunk@33226 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-13 21:34:35 +00:00
Aaron Jorbin
6c8944b6ea Add Deprecated Constructor Function
This function is one that can be called in core to indicate that a PHP4 style constructor is used. PHP4 style constructors are deprecated in PHP7.

Props jorbin, DrewAPicture for docs
See #31982



git-svn-id: https://develop.svn.wordpress.org/trunk@32989 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-28 14:55:33 +00:00
Scott Taylor
2a5278e2dd Some doc blocks should use bool instead of true|false
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32963 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-27 00:44:21 +00:00
Drew Jaynes
991237783d Add line-wrapping to a long return description because readability in documentation is important.
See [32797]. See #32421.


git-svn-id: https://develop.svn.wordpress.org/trunk@32810 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-16 23:17:16 +00:00
Andrew Ozz
7ef6ece222 Editor: do not reuse the preview tab when the user has navigated away.
See #32588.

git-svn-id: https://develop.svn.wordpress.org/trunk@32809 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-16 23:12:21 +00:00
Scott Taylor
296c559baf if is a statment, not a function.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32800 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-16 20:00:15 +00:00
Scott Taylor
a4765f9e1b Document the default list of allowed protocols in the doc block for wp_allowed_protocols() and cross-reference in esc_url() and the kses_allowed_protocols filter.
Props GunGeekATX.
Fixes #32421.


git-svn-id: https://develop.svn.wordpress.org/trunk@32797 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-16 19:44:39 +00:00
Jeremy Felt
7819ac5d16 Introduce get_main_network_id()
Expand on the logic previously available as part of `is_main_network()` and provide a way to obtain the ID of the main network. Most useful in multi-network configurations.

Props @johnjamesjacoby for the initial patch.
Fixes #30294.


git-svn-id: https://develop.svn.wordpress.org/trunk@32775 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-14 21:44:45 +00:00
Scott Taylor
c8a44d437a Add @static* annotations where they are missing.
Initialize all static vars that are not, most to `null`.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32650 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 15:42:40 +00:00
Scott Taylor
531e31b598 Add missing doc blocks to wp-includes/functions.php.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32595 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-25 16:10:59 +00:00
Jeremy Felt
365c82b0c9 s/anbled/enabled/ in global_terms_enabled filter documentation.
Fixes #32436.


git-svn-id: https://develop.svn.wordpress.org/trunk@32513 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-19 06:34:18 +00:00
John Blackbourn
8bcd566ee0 Add a viewport meta tag to wp_die().
Props leogopal

Fixes #29336


git-svn-id: https://develop.svn.wordpress.org/trunk@32501 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-13 04:07:46 +00:00
Andrew Nacin
df717e8294 Add a comment to maybe_serialize().
git-svn-id: https://develop.svn.wordpress.org/trunk@32458 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-08 16:26:13 +00:00
Boone Gorges
a4625b51eb Add 'webcal' to the list of URI protocols whitelisted by default.
Fixes #31666.

git-svn-id: https://develop.svn.wordpress.org/trunk@32346 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-05 00:37:14 +00:00
Sergey Biryukov
51b69b1f7f Fix typo in a comment in wp_guess_url().
props ixkaito.
fixes #32179.

git-svn-id: https://develop.svn.wordpress.org/trunk@32325 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-29 07:18:35 +00:00
Gary Pendergast
332750a40d Revert [30640], as it was incorrectly checking some filenames.
git-svn-id: https://develop.svn.wordpress.org/trunk@32171 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-20 06:38:08 +00:00
Dominik Schilling (ocean90)
b0d6757918 Use HTTPS URLs for codex.wordpress.org.
see #27115.

git-svn-id: https://develop.svn.wordpress.org/trunk@32116 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-12 21:28:58 +00:00
Gary Pendergast
b007147ab4 Smilies: One more tweak to matching smilies with emoji.
Props iseulde.

See #31709.



git-svn-id: https://develop.svn.wordpress.org/trunk@32107 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-11 02:16:34 +00:00
Gary Pendergast
1de9bc1670 Smilies: Tweak which smiley matches which emoji.
Props iseulde.

See #31709.



git-svn-id: https://develop.svn.wordpress.org/trunk@32105 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-10 06:29:49 +00:00
Gary Pendergast
3bd66eff61 Smilies: Update our few remaining smilies to better align with Twemoji, and add frownie.png until Twemoji provide a build containing it.
Props joen.

See #31709.



git-svn-id: https://develop.svn.wordpress.org/trunk@32104 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-10 06:19:39 +00:00
Boone Gorges
a143f7f03b Avoid the use of array_replace() in add_query_arg().
`array_replace()` was introduced PHP 5.3+. Instead, we walk the array manually.

See [31966].

Fixes #31306.

git-svn-id: https://develop.svn.wordpress.org/trunk@31967 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-01 19:39:24 +00:00
Scott Taylor
d1235e323e Respect numerical keys in add_query_arg(), use array_replace() instead of array_merge().
Adds unit test.

Props tyxla.
Fixes #31306.


git-svn-id: https://develop.svn.wordpress.org/trunk@31966 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-01 19:14:46 +00:00
Drew Jaynes
9cd90a9a10 Clarify the DocBlock summary for wp_scheduled_delete() to mention that it includes posts of any type where the 'trash' status is used.
Props dkotter for the initial patch.
Fixes #31757.


git-svn-id: https://develop.svn.wordpress.org/trunk@31891 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-25 22:44:26 +00:00
Andrew Ozz
8bbb5869e9 TinyMCE: fix error and PHP warning when adding more than one instance in RTL mode.
Part props maimairel. Fixes #31578.

git-svn-id: https://develop.svn.wordpress.org/trunk@31874 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-24 20:32:23 +00:00
Gary Pendergast
ae391ec226 Add emoji support, with Twemoji fallback.
Replace exisiting smilies with equivalent emoji, or with shiny new smiley images where no emoji existed.

Props batmoo, joen and mkaz for the original plugin upon which this is based.

Props pento, iseulde, kraftbj and peterwilsoncc for making the internet's dreams come true.

See #31242



git-svn-id: https://develop.svn.wordpress.org/trunk@31733 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-11 22:48:16 +00:00
Drew Jaynes
c2d677a4a4 Add an entry to the changelog for wp_get_mime_types() mentioning that GIMP (xcf) file support was added in 4.2.
See [31578].
Fixes #31146.


git-svn-id: https://develop.svn.wordpress.org/trunk@31590 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-01 07:09:48 +00:00
Scott Taylor
7656a776af Support GIMP files in the Media Library. We already support Photoshop files.
Props MikeHansenMe.
Fixes #31146.


git-svn-id: https://develop.svn.wordpress.org/trunk@31578 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-27 19:46:19 +00:00
Scott Taylor
212d6d8046 Make a new function, wp_delete_file(). Use it.
Props scribu, wonderboymusic.
Fixes #17864.


git-svn-id: https://develop.svn.wordpress.org/trunk@31575 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-27 16:50:14 +00:00
Scott Taylor
79706ee8a8 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@31554 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-26 05:47:53 +00:00
Boone Gorges
0efce8c89c Improve documentation for return value of wp_list_pluck().
`wp_list_pluck()` will preserve the original array keys if no `$index_key`
parameter is provided. This changeset updates the documentation accordingly.

Props adamsilverstein.
Fixes #31316.

git-svn-id: https://develop.svn.wordpress.org/trunk@31451 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-13 16:51:55 +00:00
Scott Taylor
5743898e1e @param cleanup:
* `get_metadata()` will return literally anything, needs to be `mixed`
* `wp()` and `WP_Query::__construct()` no longer just take a query string
* Clarify a few others

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31212 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-16 19:02:26 +00:00
Drew Jaynes (DrewAPicture)
9b0cf1bd5b Ensure we're using the correct @ignore phpDocumentor tag to mark elements that should be skipped when parsing.
Up to this point, various core elements' DocBlocks incorrectly included an `@internal` tag as a means for skipping the parsing process. When paired with a description (inline or otherwise), `@internal` is a valid tag meant to provide internal-only context, but not necessarily to skip parsing the entire element.

See #30987.


git-svn-id: https://develop.svn.wordpress.org/trunk@31170 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-13 00:50:32 +00:00
Scott Taylor
c3bd2252f5 Use PHP_SAPI constant instead of php_sapi_name() in iis7_supports_permalinks(), wp_fix_server_vars(), and wp_redirect().
See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31120 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-10 04:58:49 +00:00
Scott Taylor
6fd11624d1 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@31090 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-08 07:04:40 +00:00
Scott Taylor
8108c0babe PHP keywords and constants "true", "false", "null" should be in lower case - there was one lingering capitalized false in _http_build_query().
See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31086 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-08 06:13:05 +00:00
Gary Pendergast
eb4d356e29 size_format() incorrectly included a trailing space for B values: less than 1024 bytes.
Also add a unit test to check for this, so we don't do it again.

Fixes #30908.

Props tillkruess.
 


git-svn-id: https://develop.svn.wordpress.org/trunk@31052 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-05 13:12:06 +00:00
Scott Taylor
49d19a367a ImageMagick expects TIFF files to have .tiff as an extension, so the key in wp_get_mime_types() should be 'tiff|tif' not 'tif|tiff' so the proper extension is returned in WP_Image_Editor->get_extension() subclass invocations.
Fixes #30211.


git-svn-id: https://develop.svn.wordpress.org/trunk@31044 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-04 03:08:48 +00:00
Scott Taylor
0632a3de68 Improve various @param docs.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30674 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 23:23:37 +00:00
Drew Jaynes (DrewAPicture)
e587324180 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@30656 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 12:09:56 +00:00
Scott Taylor
a411918199 Adjust the RegEx in wp_check_filetype() to be aware that query strings are thing that exist sometimes in URLs.
Adds unit tests.

Props voldemortensen.
Fixes #30377.


git-svn-id: https://develop.svn.wordpress.org/trunk@30640 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 06:32:16 +00:00
Drew Jaynes (DrewAPicture)
f7e01d5331 Improve line-wrapping and formatting in the DocBlock for wp_send_json_error().
See #30469.


git-svn-id: https://develop.svn.wordpress.org/trunk@30614 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-28 11:38:59 +00:00
Drew Jaynes (DrewAPicture)
7bf6ff37e2 4.1 Docs Audit: Ensure optional arguments in wp_json_encode() are properly documented as such.
See #30469.


git-svn-id: https://develop.svn.wordpress.org/trunk@30613 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-28 11:35:39 +00:00
Gary Pendergast
0cb93dd166 When json_encode() returns a JSON string containing 'null' in PHP 5.4 or earlier, wp_json_encode() will now sanity check the data, as older versions of PHP failed to encode non UTF-8 characters correctly, instead returning 'null'.
Fixes #30471.


git-svn-id: https://develop.svn.wordpress.org/trunk@30561 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-25 05:00:36 +00:00
Drew Jaynes (DrewAPicture)
d93bfdce56 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 description for `_deprecated_argument()`
* Markdown-indent a code snippet in the description for `wp_localize_script()`
* Backtick-escape HTML tags in two parameter descriptions for `wp_register()`
* Various DocBlock formatting in the description for `get_bloginfo()`
* Remove HTML tag from the summary for `_wp_render_title_tag()`
* Backtick-escape a HTML tag in the description for `get_archives_link()`
* Markdown-indent a code snippet in the description for `wp_admin_css_color()`
* Markdown-indent a code snippet in the description for the `welcome_panel` hook

Props rarst.
See #30473.


git-svn-id: https://develop.svn.wordpress.org/trunk@30541 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-24 05:38:44 +00:00
Drew Jaynes (DrewAPicture)
4f331ec1df Improve return description for get_file_data() documentation.
Also convert an incorrect use of `@see` to `@link`.

Props 5um17 for the initial patch.
Fixes #30466.


git-svn-id: https://develop.svn.wordpress.org/trunk@30532 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-23 17:56:14 +00:00
John Blackbourn
3afb2efae4 Update the inline docs for wp_die() to reflect parameter changes made in r30355
See #10551


git-svn-id: https://develop.svn.wordpress.org/trunk@30507 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-21 17:07:42 +00:00
John Blackbourn
8ea65c3c0d Add support for WP_Error objects passed to wp_send_json_error(). The error object gets output as an array of error codes and messages, rather than as an empty object.
Fixes #28978
Props paulschreiber


git-svn-id: https://develop.svn.wordpress.org/trunk@30506 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-21 16:55:28 +00:00
Drew Jaynes (DrewAPicture)
aa2c1e6e73 Ensure the mixed type of string|int is reflected on the $title parameter in wp_die().
The ability to pass an error code as short-hand to the `$title` and `$args` parameters was added in r30355. Changes also include cleaned-up formatting and line-wraps for other documentation in the DocBlock.

See [30355]. Fixes #10551.


git-svn-id: https://develop.svn.wordpress.org/trunk@30379 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-18 16:46:36 +00:00
John Blackbourn
4e1e4745ff Switch to a 403 response code in places where it is more appropriate than a 500 due to permissions errors.
Fixes #10551
Props nacin


git-svn-id: https://develop.svn.wordpress.org/trunk@30356 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-16 06:15:29 +00:00
John Blackbourn
b68026bbfb Allow the response code to be passed as a shorthand to the $title or $args parameter of wp_die(), for brevity.
See #10551 and #11286
Props nacin


git-svn-id: https://develop.svn.wordpress.org/trunk@30355 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-16 06:10:58 +00:00
Boone Gorges
2b6df5f8ce Ignore case when checking string 'false' in wp_validate_boolean().
Props TobiasBg, kitchin.
Fixes #30238.

git-svn-id: https://develop.svn.wordpress.org/trunk@30207 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-03 15:54:42 +00:00
Scott Taylor
2443090c23 Correct the @param type for the $query arg for remove_query_arg().
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30191 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-03 05:28:47 +00:00
Scott Taylor
5f09d235f0 In _wp_json_convert_string(), when $use_mb is false, perhaps pass a variable that actually exists to wp_check_invalid_utf8().
Introduced in [30055].
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30162 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-01 21:59:58 +00:00
Drew Jaynes (DrewAPicture)
7cd15026bd Correct references of @uses $wpdb in core documentation to use @global.
See #30191, [30105].
Fixes #30217.


git-svn-id: https://develop.svn.wordpress.org/trunk@30122 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-31 17:55:39 +00:00
Drew Jaynes (DrewAPicture)
3cc10d77a0 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.


git-svn-id: https://develop.svn.wordpress.org/trunk@30105 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-30 01:04:55 +00:00
Mark Jaquith
42456d35fd Docs and code standards cleanup for [30055] (wp_json_encode() & friends)
fixes #28786
props TobiasBg

git-svn-id: https://develop.svn.wordpress.org/trunk@30078 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-28 21:28:34 +00:00
Scott Taylor
1e8635fcea Adjust caching for get_term_by() calls:
* Remove md5 hashes for term name cache keys
* Remove the namespace for the keys for `names` and `slugs` and add them to the group names
* Remove `wp_get_last_changed()`, which @nacin hated
 
Props tollmanz.
Fixes #21760.


git-svn-id: https://develop.svn.wordpress.org/trunk@30073 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-28 21:04:52 +00:00
Gary Pendergast
d871bf86ca Fix a PHPDoc typo for wp_json_encode().
Props JustinSainton.

See #28786.


git-svn-id: https://develop.svn.wordpress.org/trunk@30058 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-28 18:53:10 +00:00
Gary Pendergast
0e68ecc0b6 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.



git-svn-id: https://develop.svn.wordpress.org/trunk@30055 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-28 18:34:16 +00:00
Scott Taylor
0d58d32462 Cache get_term_by() calls:
* Add a helper function, `wp_get_last_changed()`, to retrieve a last-modified timestamp by cache group
* When caching a term, also make cache entries for slug and name via `slug:{$term_id}` and `name:{$term_id}` keys in the `$taxonomy:$last_changed` bucket that reference the term_id
* In `clean_term_cache()` and `update_term_cache()`, respect `$_wp_suspend_cache_invalidation`
* Original term cache entries maintain BC

Adds unit tests.

Props wonderboymusic, tollmanz, boonebgorges.
Fixes #21760.


git-svn-id: https://develop.svn.wordpress.org/trunk@29915 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-16 04:44:13 +00:00
Scott Taylor
07a38ff81a Allow PSDs (Photoshop documents) to be uploaded.
Props michalzuber, ccprice.
Fixes #28805.


git-svn-id: https://develop.svn.wordpress.org/trunk@29833 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-03 19:51:56 +00:00
Mark Jaquith
7063377539 Use HTTPS URLs for core.trac.wordpress.org
see #27115

git-svn-id: https://develop.svn.wordpress.org/trunk@29788 602fd350-edb4-49c9-b593-d223f7449a82
2014-09-29 13:27:55 +00:00
Scott Taylor
f00f28cce0 wp_extract_urls() needs to also grab URLs with query strings and hashes.
Updates unit test.

Props hauvong, dlh.
Fixes #29314.


git-svn-id: https://develop.svn.wordpress.org/trunk@29756 602fd350-edb4-49c9-b593-d223f7449a82
2014-09-23 02:49:22 +00:00
Scott Taylor
91517ce620 Clarify that get_the_date(), get_the_time(), get_post_time() and get_post_modified_time() should return false when get_post() is null.
Adds unit tests.

Props GaryJ, SergeyBiryukov, tollmanz.
Fixes #28310.


git-svn-id: https://develop.svn.wordpress.org/trunk@29344 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-01 18:39:22 +00:00
Sergey Biryukov
6be5fc19b3 Make sure phpinfo() is not disabled before calling it in apache_mod_loaded().
props rohan013, harmr.
fixes #26772.

git-svn-id: https://develop.svn.wordpress.org/trunk@29330 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-30 17:27:54 +00:00
Dominik Schilling (ocean90)
080f52ceb9 Revert [28894] as it's currently unused in core.
see #28487.

git-svn-id: https://develop.svn.wordpress.org/trunk@29309 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-27 17:15:22 +00:00
Drew Jaynes (DrewAPicture)
551f829c55 Inline documentation cleanup for 4.0 audit.
Various improvements:
* Adds `@see` reference for `wp_list_comments()` in 'wp_list_comments_args' filter docs, added in [28285]
* Various phpDoc tweaks for the 'run_wptexturize' filter docs, added in [28715]
* Sentence and wrapping changes for `is_https_url()`, added in [28894]
* Documents the `$args` parameter for `wp_dropdown_languages()`, added in [29007]
* Adds a period to the parameter description for `_update_posts_count_on_delete()`, added in [28835]
* Documents a global in `is_customize_preview()`, added in [28999]
* phpDoc tweaks, adds an access modifier for `wpdb::esc_like()`, added in [28711]

See #28885.


git-svn-id: https://develop.svn.wordpress.org/trunk@29163 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-14 01:01:22 +00:00
Drew Jaynes (DrewAPicture)
0be40edabc Fix inconsistent language in two function descriptions in wp-includes/functions.php.
Also adds correct coding standards to a code sample in `_deprecated_argument()`.

Props TobiasBg.
Fixes #26185.


git-svn-id: https://develop.svn.wordpress.org/trunk@29013 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-07 07:07:17 +00:00
Drew Jaynes (DrewAPicture)
2a07fc794e General inline documentation improvements in wp-includes/functions.php.
Final run. Fixes #26185.


git-svn-id: https://develop.svn.wordpress.org/trunk@29011 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-07 06:18:05 +00:00
Sergey Biryukov
fd4ad167b2 Some fixes for get_weekstartend() docs.
see #26185.

git-svn-id: https://develop.svn.wordpress.org/trunk@28937 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-01 14:58:37 +00:00
Drew Jaynes (DrewAPicture)
ecb39eaccb General inline documentation improvements in wp-includes/functions.php.
Second run. See #26185.


git-svn-id: https://develop.svn.wordpress.org/trunk@28936 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-01 01:43:48 +00:00
Sergey Biryukov
4114ff052f Remove free-spacing modifier and extra spaces from wp_extract_urls() pattern.
fixes #28222.

git-svn-id: https://develop.svn.wordpress.org/trunk@28933 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-30 23:08:48 +00:00
Drew Jaynes (DrewAPicture)
99faddd819 General inline documentation improvements in wp-includes/functions.php.
First run. See #26185.


git-svn-id: https://develop.svn.wordpress.org/trunk@28918 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-30 03:55:03 +00:00
Drew Jaynes (DrewAPicture)
0c8b5722d2 Improve inline documentation for date_i18n(), _http_build_query(), wp_checkdate(), and wp_auth_check().
Props morganestes.
See #26185.


git-svn-id: https://develop.svn.wordpress.org/trunk@28917 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-30 03:46:22 +00:00
Andrew Nacin
02094174f9 Add index key support for wp_list_pluck(), à la array_column().
props trepmal.
fixes #28666.


git-svn-id: https://develop.svn.wordpress.org/trunk@28900 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-29 21:25:21 +00:00
John Blackbourn
3c77cf1140 Introduce is_https_url() for testing whether the scheme for a given URL is https. See #28487.
git-svn-id: https://develop.svn.wordpress.org/trunk@28894 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-29 11:31:25 +00:00
Scott Taylor
56e66c79b4 wp_extract_urls() should not match dates.
Updates unit tests.

Props hinnerk, sergej.mueller.
Fixes #28222.


git-svn-id: https://develop.svn.wordpress.org/trunk@28882 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-28 04:15:30 +00:00
Scott Taylor
782bd3ee67 Do not touch absint(). Reverts [28855].
git-svn-id: https://develop.svn.wordpress.org/trunk@28858 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-26 18:44:45 +00:00
Scott Taylor
8ec1723e03 Revert [28856] at nacin's behest. See #23383.
git-svn-id: https://develop.svn.wordpress.org/trunk@28857 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-26 18:33:50 +00:00
Scott Taylor
ce6de601e3 absint() should always return PHP_INT_MAX if the resulting value exceeds it.
See [28855].
Fixes #23383.


git-svn-id: https://develop.svn.wordpress.org/trunk@28856 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-26 18:23:51 +00:00
Scott Taylor
df04529010 Add a second optional parameter to absint() to limit the result to PHP_INT_MAX.
See #23383.


git-svn-id: https://develop.svn.wordpress.org/trunk@28855 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-26 17:51:52 +00:00
Scott Taylor
6d924f9d53 Add mime support for 3gp, 3g2 and 3gpp video formats. These are not supported by MediaElement or the WP media shortcodes, just an FYI.
Props azaozz, m_uysl.
Fixes #23380.


git-svn-id: https://develop.svn.wordpress.org/trunk@28841 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-26 01:42:54 +00:00
Sergey Biryukov
2120ede170 Remove mbstring_binary_safe_strlen(). Use mbstring_binary_safe_encoding() and reset_mbstring_encoding() directly.
fixes #28162.

git-svn-id: https://develop.svn.wordpress.org/trunk@28808 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-23 22:20:23 +00:00
Sergey Biryukov
4fd715c937 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.

git-svn-id: https://develop.svn.wordpress.org/trunk@28806 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-23 14:47:08 +00:00
Andrew Nacin
c45a47efdd Stop denying wp-includes/* in our default robots.txt.
props joostdevalk.
fixes #28604.


git-svn-id: https://develop.svn.wordpress.org/trunk@28794 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-20 21:01:29 +00:00
Scott Taylor
db7816dd0c smilies_init(), treat &nbsp; like whitespace when converting smilies.
Adds unit tests.

Props miqrogroove.
Fixes #27587.


git-svn-id: https://develop.svn.wordpress.org/trunk@28717 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-10 02:02:23 +00:00
Scott Taylor
84ad12b439 Replace all uses of like_escape() with $wpdb->esc_like().
Props miqrogroove.
See #10041.


git-svn-id: https://develop.svn.wordpress.org/trunk@28712 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-10 00:43:32 +00:00
John Blackbourn
7a220d7e95 Deprecate url_is_accessable_via_ssl(). Fixes #19555. Props jgadbois.
git-svn-id: https://develop.svn.wordpress.org/trunk@28709 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-09 22:02:50 +00:00