Commit Graph

39267 Commits

Author SHA1 Message Date
Jonathan Desrosiers 1b97ea1fcf General: Prevent nested paragraph tags when displaying PHP update annotations.
This change utilizes the new parameters accepted by `wp_update_php_annotation()` introduced in [44935] to prevent nested `<p>` tags when displaying the PHP update annotation.

Props afragen, desrosj.
Fixes #46269.

git-svn-id: https://develop.svn.wordpress.org/trunk@44936 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-19 20:40:02 +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
K. Adam White 60ea373df9 REST API: Remove unused attachments controller method.
The `validate_user_can_query_private_statuses` method is itself unused, and calls a parent class method previously removed in r39104.

Props dlh.
Fixes #45611.



git-svn-id: https://develop.svn.wordpress.org/trunk@44934 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-19 03:27:45 +00:00
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