Commit Graph

39364 Commits

Author SHA1 Message Date
K. Adam White
58aad3837f REST API: Ensure "Allow" header is returned for OPTIONS requests.
This changeset ensures `$request->set_url_params()` is called while fulfilling OPTIONS requests, where previously it was skipped because OPTIONS requests short-circuit the logic in `dispatch` which handles this setup for other request methods. Omitting the URL parameters prevented the Allow header from being set.

Props killua99, noisysocks.
Fixes #45753.


git-svn-id: https://develop.svn.wordpress.org/trunk@44933 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-19 03:21:28 +00:00
Jonathan Desrosiers
c62eab00a7 Coding Standards: Fix PHPCS issue introduced in [44931].
See #44901.

git-svn-id: https://develop.svn.wordpress.org/trunk@44932 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-19 02:47:41 +00:00
Jonathan Desrosiers
d941cf62ee Privacy: Remove unnecessary WP_Error when handling confirmaction requests.
By reordering the logic when handling the `confirmaction` action in `wp-login.php`, the need for a new `WP_Error` object to be created can be eliminated. The error message can be passed directly into a `wp_die()` call, matching the other validation errors in related code.

Props garrett-eclipse, birgire.
Fixes #44901.

git-svn-id: https://develop.svn.wordpress.org/trunk@44931 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-19 02:37:38 +00:00
Jonathan Desrosiers
bdba41f9da General: Ensure error messages end with a period for consistency.
Props garrett-eclipse, birgire.
See #44901.

git-svn-id: https://develop.svn.wordpress.org/trunk@44930 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-19 02:36:18 +00:00
Andrea Fercia
d26542632e Accessibility: Improve the "Hello Dolly" accessibility.
- adds a visually hidden text to give context to the lyrics
- the text is `Quote from Hello Dolly song, by Jerry Herman:`
- adds a `lang` HTML attribute (when the admin language is not English) to better support assistive technologies 
- adds a `dir` HTML attribute to better support the LTR English lyrics with RTL languages 
- CSS adjustments

Props audrasjb, SergeyBiryukov, danieltj, birgire, karmatosed, desrosj, afercia.
Fixes #43632.


git-svn-id: https://develop.svn.wordpress.org/trunk@44929 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-18 17:18:46 +00:00
Felix Arntz
82be24c885 Multisite: Do not prime site meta caches unless necessary.
Props spacedmonkey.
Fixes #46357. See #46167.


git-svn-id: https://develop.svn.wordpress.org/trunk@44926 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-18 15:55:25 +00:00
Felix Arntz
cab8d7df1a Multisite: Ensure site meta caches are not primed unless the wp_blogmeta table is available.
Prior to this change, querying sites early in the bootstrap process could potentially cause a fatal error, since at that stage the filter to bail on updating site meta cache if the respective database table has not been installed yet is not hooked in yet. This changeset forces the filter to be added if that is not already the case.

Props spacedmonkey.
Fixes #46167.


git-svn-id: https://develop.svn.wordpress.org/trunk@44925 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-18 15:47:36 +00:00
Andrea Fercia
01b2c8e34b Accessibility: Improve the Comments and Privacy count text.
- standardizes the Comment count string to `%s Comment in moderation', '%s Comments in moderation` so it can be bulk-updated
- adds the string as visually hidden text in the admin menu 
- introduces an `updateInModerationText` JS simple function, responsible to correctly update all the related text using the data from the AJAX response
- adds a visually hidden text "1 Privacy Policy update" to the Privacy menu items count
- adds/improves translators comments

Changes that apply to all the count bubbles (Updates, plugins, etc.)
- makes the bubbles and their text slightly bigger
- improves the active menu item bubble contrast by changing the background color to red (option 2 in the screenshot attached in a previous comment)

Props adamsoucie, afercia.
Fixes #33030.


git-svn-id: https://develop.svn.wordpress.org/trunk@44924 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-18 15:21:17 +00:00
Sergey Biryukov
6d2f78d9ba Docs: Add missing article in setExpectedDeprecated() DocBlock.
See #46543.

git-svn-id: https://develop.svn.wordpress.org/trunk@44923 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-17 13:10:44 +00:00
Sergey Biryukov
aaf266db42 Docs: Correct @param name in setExpectedIncorrectUsage() DocBlock.
Props yoavf.
Fixes #46546.

git-svn-id: https://develop.svn.wordpress.org/trunk@44922 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-17 12:22:10 +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
Sergey Biryukov
93da02db7f Docs: Correct grammar in PemFTP description.
Props umang7.
Fixes #46507.

git-svn-id: https://develop.svn.wordpress.org/trunk@44920 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-17 01:19:54 +00:00
Sergey Biryukov
ee3552aaf6 Docs: Use 3-digit, x.x.x style semantic versioning for @since 2.5.0 entries in wp-admin/includes/class-ftp.php.
Missed in [26868].

Props mukesh27.
See #46507.

git-svn-id: https://develop.svn.wordpress.org/trunk@44919 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-17 01:17:33 +00:00
Andrea Fercia
eeb57f67c4 Accessibility: Login: Display error messages when both the username and password fields are empty.
For accessibility and usability, if an input error is detected, the item that is in error needs to be identified and the error needs to be described to the user in text (WCAG Success Criterion 3.3.1). The login form displays an error when the username field is empty or when the password field is empty. It omits to do so when both fields are empty.

This change restores the login form behavior to the one that used to work in WordPress 2.3 (!) and displays the related error messages also when both fields are empty.

Props birgire, audrasjb.
See #8938, #5405, #3708.
Fixes #42985.


git-svn-id: https://develop.svn.wordpress.org/trunk@44918 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-16 15:21:25 +00:00
Peter Wilson
13bb9c5ef4 Cron: Ensure identical single events aren't scheduled less than 10min apart.
Improves the logic in `wp_schedule_single_event()` to ensure an identical event is not scheduled within ten minutes.

This moves the logic for checking for identical events to be self contained rather than relying on `wp_next_scheduled()` as this fails to account for events with a past timestamp when wp-cron fails to trigger or for multiple identical events being scheduled already.

Props bodohugobarwich.
Fixes #44818.



git-svn-id: https://develop.svn.wordpress.org/trunk@44917 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-16 06:41:23 +00:00
Sergey Biryukov
7be4aabff6 Coding Standards: Minor code and performance improvements in phpunit/includes/abstract-testcase.php.
Props andizer.
Fixes #46500.

git-svn-id: https://develop.svn.wordpress.org/trunk@44916 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 22:13:30 +00:00
Sergey Biryukov
98e2fcf4fc Build/Test Tools: Add missing access modifiers in phpunit/includes/wp-profiler.php.
Props andizer.
Fixes #46505.

git-svn-id: https://develop.svn.wordpress.org/trunk@44915 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 21:58:01 +00:00
Sergey Biryukov
bea05b4a41 Coding Standards: Use strict comparison in WP_Post where possible.
Props andizer.
Fixes #46508.

git-svn-id: https://develop.svn.wordpress.org/trunk@44914 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 21:54:29 +00:00
Andrew Ozz
353bfb5e7a TinyMCE: fix the TinyMCE help modal keyboard shortcut on Mac for the classic editor and classic block.
Fixes #45791.

git-svn-id: https://develop.svn.wordpress.org/trunk@44913 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 21:42:48 +00:00
Jonathan Desrosiers
02d3de004c Networks and Sites: Introduce populate_site_meta filter.
The `populate_site_meta` filter can be used to modify the site meta added during the creation of a new site. This filter mirrors the approach used for networks in `populate_network_meta`.

Props spacedmonkey, davidbaumwald.
Fixes #46437.

git-svn-id: https://develop.svn.wordpress.org/trunk@44912 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 19:42:40 +00:00
Andrew Ozz
d5820a5324 TinyMCE: remove the reference to skin.min.css.map from skin.min.css. Fixes an unneeded 404 request.
Fixes #46533.

git-svn-id: https://develop.svn.wordpress.org/trunk@44911 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 19:31:42 +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
152e9d2b8f Privacy: Add unit tests for exporting and erasing personal data.
Props birgire, garrett-eclipse, desrosj.
Fixes #43438.

git-svn-id: https://develop.svn.wordpress.org/trunk@44909 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 18:07:09 +00:00
Jonathan Desrosiers
40ff06c083 Privacy: Improve data export/erasure error messages and translator comments.
These changes address inaccuracies in current messages and makes them more informative.

Props birgire, garrett-eclipse, desrosj.
See #43438.

git-svn-id: https://develop.svn.wordpress.org/trunk@44908 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 18:06:08 +00:00
Jonathan Desrosiers
18a251d065 Embeds: Allow post title to be filtered when preparing an oEmbed response.
By changing the way the post title is added to the array of data from `$post->post_title` to `get_the_title()`, the title can now be modified using the `the_title` filter. This ensures post titles returned in oEmbed responses are consistent with those that show on a site.

Props mheikkila, swissspidy.
Fixes #42826.

git-svn-id: https://develop.svn.wordpress.org/trunk@44907 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 16:41:53 +00:00
Jonathan Desrosiers
b66ae2b4c1 Privacy: Allow new requests to be created after a user’s existing one has been completed.
When dealing with personal data exports and erasure requests, it is important to have a log of all the requests for a specific person. This is often required to confirm when and how many times requests were completed and fulfilled properly. 

This change allows a new request to be created after a previous data request has reached completed status (`request-completed`) instead of requiring admins to delete or re-initiate the existing request. The latter approach removes the historical log of requests for that user when creating a new request.

Full unit tests for the `wp_create_user_request()` function are also included.

Props garrett-eclipse, cc0a, birgire, desrosj.
Fixes #44707.

git-svn-id: https://develop.svn.wordpress.org/trunk@44906 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 16:26:55 +00:00
Andrea Fercia
28714c42bd Accessibility: Improve the semantics of "tabs" that are not real ARIA tabs.
Some "visual tabs" in the WordPress admin used links wrapped in a `h2` heading. While these tabs look like ARIA tabs, they're just navigation menus and should be marked-up as such to be correctly exposed to assistive technologies.
- changes the wrapping `<h2>` to a `<nav>` element: worth reminding `<nav>` elements also define ARIA landmarks
- adds an `aria-label` to the `<nav>` elements so they can be distinguished from other `<nav>` elements in the page
- adjusts the headings level in the Credits page

Props audrasjb, afercia.
Fixes #43398.


git-svn-id: https://develop.svn.wordpress.org/trunk@44905 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 14:53:18 +00:00
Sergey Biryukov
04a9083709 PHPCS: Remove extra space added in [44902].
See #46499.

git-svn-id: https://develop.svn.wordpress.org/trunk@44904 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 14:27:07 +00:00
Sergey Biryukov
1bfa9370f7 Build/Test Tools: Add missing access modifiers to factory classes in phpunit/includes/factory.
Props andizer.
Fixes #46504.

git-svn-id: https://develop.svn.wordpress.org/trunk@44903 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 12:15:08 +00:00
Sergey Biryukov
981ed3fbc6 Docs: Improve documentation for phpunit/includes/abstract-testcase.php.
Props andizer.
Fixes #46499.

git-svn-id: https://develop.svn.wordpress.org/trunk@44902 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 12:01:15 +00:00
Sergey Biryukov
5e04716bfe Docs: Remove unnecessary @see tag in wpdb::prepare().
The tag is only necessary for hooks. For functions and methods, autolinking is handled automatically on developer.wordpress.org.

Props mbelchev, ocean90, johannadevos.
Fixes #44585. See #45204.

git-svn-id: https://develop.svn.wordpress.org/trunk@44901 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 11:17:57 +00:00
Andrea Fercia
026abd4bc6 Accessibility: improve the "URL" and "Alt text" fields in the media modals.
Many users found the attachment URL field confusing: it says "URL" so it may appear like a field meant to paste a URL into.
Also, the Alt text field is the most important one in terms of content, while the Title field needs to be de-emphasized.

- changes the URL field label to "Copy link"
- moves the alt text field to the top as first field 
- avoids to set initial focus on the alt text field 
- adds an explanatory text with a link pointing to the W3C "alt decision tree" tutorial 
- adds `aria-describedby` to target the explanatory text
- adjusts the CSS accordingly
- updates the QUnit index.html file

Props melchoyce, audrasjb, afercia.
Fixes #41612.


git-svn-id: https://develop.svn.wordpress.org/trunk@44900 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-15 10:42:35 +00:00
Sergey Biryukov
d52e37ea5e Acessibility: Remove title attribute in login_header().
* Deprecate `login_headertitle` filter, introduce `login_headertext` as a replacement.
* For backwards compatibility, if a `login_headertitle` is set, it will be used as link text.
* Make the login header logo URL and text consistent between single site and Multisite.
* Avoid ambiguity of where the WordPress logo points to; link to WordPress.org by default.
* `login_headerurl` filter is still available to change the URL of the header logo.

Props afercia, pratikkry, chetan200891.
Fixes #42537.

git-svn-id: https://develop.svn.wordpress.org/trunk@44899 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-14 21:09:47 +00:00
Sergey Biryukov
8ba2c45029 Docs: Add a @since tag for the new $selected parameter of get_archives_link().
See #40662.

git-svn-id: https://develop.svn.wordpress.org/trunk@44898 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-14 19:36:44 +00:00
Sergey Biryukov
9265ff8a2f Widgets: Pre-select currently viewed archive in the Archives dropdown widget, for consistency with the Categories widget.
Props robobot3000, audrasjb, afercia, Themonic.
Fixes #40662.

git-svn-id: https://develop.svn.wordpress.org/trunk@44897 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-14 19:30:59 +00:00
Andrea Fercia
45faac902d Accessibility: Improve the placeholder "prompt" text in the post title and Quick Draft widget.
Old browsers didn't support the HTML placeholder attribute. For a number of years, `<label>` elements have been used in a few places in WordPress to emulate placeholders. It's time to improve semantics and interaction, use real placeholders when possible, and clean up some JavaScript.

- Quick Draft widget: it now uses visible `<label>` elements and a real `placeholder` attribute 
- removes the related JavaScript
- Post title:
  - keeps the "prompt" label for backwards compatibility
  - improves the JavaScript to make the "prompt" label stay visible on focus and disappear when typing, like real placeholder do
- changes the post "prompt" text from "Enter title here" to "Add title" for consistency with the Block Editor 
- cleans-up some CSS

Props Cheffheid, afercia.
Fixes #42390.


git-svn-id: https://develop.svn.wordpress.org/trunk@44896 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-14 17:38:36 +00:00
Andrea Fercia
cdca702477 Accessibility: Improve the password form buttons accessibility.
- makes the "Cancel" button always visible: this allows to generate a new password also on small screens
- moves focus back to the Generate Password button when closing the form
- changes the password reset show/hide button from a clickable `<span>` element to a real `<button>` element
- improves the CSS

Props janak007, afercia.
Fixes #42853.


git-svn-id: https://develop.svn.wordpress.org/trunk@44895 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-13 23:36:45 +00:00
Jonathan Desrosiers
4a7b41e6cf Docs: Correct various spelling mistakes.
Props man4toman.
Fixes #46339.

git-svn-id: https://develop.svn.wordpress.org/trunk@44894 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-13 19:31:49 +00:00
Sergey Biryukov
c43e43a7ce PHPCS: Fix errors introduced in [44833].
git-svn-id: https://develop.svn.wordpress.org/trunk@44858 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-12 22:55:33 +00:00
Sergey Biryukov
bb281f9bd3 Comments: Improve comment content filtering.
git-svn-id: https://develop.svn.wordpress.org/trunk@44842 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-12 22:29:46 +00:00
Sergey Biryukov
4a0e3f009d Formatting: Improve rel="nofollow" handling in comments.
git-svn-id: https://develop.svn.wordpress.org/trunk@44833 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-12 22:14:14 +00:00
Andrew Ozz
da7b514926 TinyMCE: fix editor height when loaded hidden.
Props nnikolov, azaozz.
Fixes #45461.

git-svn-id: https://develop.svn.wordpress.org/trunk@44832 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-12 20:13:14 +00:00
Dominik Schilling
e6442466f9 I18N: Add $domain argument to translate_user_role().
The text domain is optional and gets passed to `translate_with_gettext_context()`.

Props johnjamesjacoby	.
Fixes #38736.

git-svn-id: https://develop.svn.wordpress.org/trunk@44830 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-11 20:31:46 +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
Sergey Biryukov
56e7d96070 Docs: Improve wording in a comment in wp_set_current_user().
Props nielsdeblaauw.
Fixes #45032.

git-svn-id: https://develop.svn.wordpress.org/trunk@44826 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-11 10:56:39 +00:00
Andrea Fercia
2e6ce4195b Accessibility: Customize: Improve the widgets search and the widget Remove button.
- debounces the widgets search to avoid multiple `speak()` audible messages while typing: search results and messages are now triggered when users stop typing
- clarifies the Remove button title attribute
- removes a couple unnecessary `preventDefault()`

Props davetgreen, afercia.
Fixes #28888.


git-svn-id: https://develop.svn.wordpress.org/trunk@44825 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-09 12:55:12 +00:00
Jonathan Desrosiers
1615233fa2 Privacy: Be less restrictive of the HTML tags allowed in user data exports.
Previously, only `a` and `br` tags were allowed in the `value` table cell for each field included in the HTML file generated when a user is exporting their personal data. Instead of relying on a hardcoded list of allowed tags, the `wp_kses()` call in `wp_privacy_generate_personal_data_export_group_html()` will now fallback to the default list of allowed tags (which includes `i`, `strong`, `em`, and other basic HTML formatting tags).

Also, a new context of `personal_data_export` will now be passed to the `wp_kses()` call. As a result, the list of HTML tags and attributes allowed in the export file can now be filtered using the `wp_kses_allowed_html` filter and checking for the `personal_data_export` context.

Fixes #44044.
Props tz-media, desrosj, pento, birgire, garrett-eclipse.

git-svn-id: https://develop.svn.wordpress.org/trunk@44824 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-08 22:04:50 +00:00
Jonathan Desrosiers
a71fece6b8 Built/Test Tools: Add missing access modifiers to abstract-testcase.php.
Fixes #46384.
Props andizer.

git-svn-id: https://develop.svn.wordpress.org/trunk@44823 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-08 20:51:32 +00:00