Commit Graph

37109 Commits

Author SHA1 Message Date
Gary Pendergast 0fcd27ec31 Emoji: Fix some failing unit tests in PHP 5.2 and 5.3.
- Older versions of PHP don't know how to `html_entity_decode()` emoji.
- The fall back regex was a little too broad, catching characters that aren't emoji.

See #35293.


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


git-svn-id: http://core.svn.wordpress.org/trunk@40895 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-14 11:50:43 +00:00
Gary Pendergast b13bab3e53 Emoji: Port the Twemoji regex to PHP.
Previously, `wp_encode_emoji()` and `wp_staticize_emoji()` used inaccurate regular expressions to find emoji, and transform then into HTML entities or `<img>`s, respectively. This would result in emoji not being correctly transformed, or occasionally, non-emoji being incorrectly transformed.

This commit adds a new `grunt` task - `grunt precommit:emoji`. It finds the regex in `twemoji.js`, transforms it into a PHP-friendly version, and adds it to `formatting.php`. This task is also automatically run by `grunt precommit`, when it detects that `twemoji.js` has changed.

The new regex requires features introduced in PCRE 8.32, which was introduced in PHP 5.4.14, though it was also backported to later releases of the PHP 5.3 series. For versions of PHP that don't support this, it will fall back to an updated version of the loose-matching regex.

For short posts, the performance difference between the old and new regex is negligible. As the posts get longer, however, the new method is exponentially faster.

Fixes #35293.


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


git-svn-id: http://core.svn.wordpress.org/trunk@40893 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-14 05:47:49 +00:00
Drew Jaynes beb67c9512 Docs: Improve the DocBlock summary for `WP_Query::parse_orderby()`.
See #41017.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40892 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-13 15:44:41 +00:00
Drew Jaynes e1a227cf11 Docs: Document usage of the `$wpdb` global in `WP_Query::parse_search()` and `WP_Query::parse_orderby()`.
Props avinapatel.
Fixes #41313.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40891 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-13 15:42:44 +00:00
Sergey Biryukov e42553dbea Docs: Add a `@global` entry for `$tinymce_version` in `_WP_Editors::editor_js()`.
Props jontyravi.
Fixes #41311.
Built from https://develop.svn.wordpress.org/trunk@41040


git-svn-id: http://core.svn.wordpress.org/trunk@40890 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-13 14:33:40 +00:00
Sergey Biryukov 8cfdf4dd3a Docs: Add a `@global` entry for `$wpdb` in `is_user_member_of_blog()`.
Props ajayghaghretiya1.
Fixes #41308.
Built from https://develop.svn.wordpress.org/trunk@41039


git-svn-id: http://core.svn.wordpress.org/trunk@40889 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-13 13:54:41 +00:00
Boone Gorges 65e2935636 Taxonomy: Avoid duplicates when querying for terms in taxonomies registered with `$args` parameter.
[40514] introduced a bug that caused term queries to return some duplicates
when the `$taxonomies` array contained only taxonomies that were originally
registered with an `$args` array. We fix this bug by ensuring that
recursive `get_terms()` queries stop when all queried `$taxonomies` have
already been referenced.

Props bor0, atanasangelovdev.
Fixes #41010.
Built from https://develop.svn.wordpress.org/trunk@41037


git-svn-id: http://core.svn.wordpress.org/trunk@40887 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-13 13:41:44 +00:00
Sergey Biryukov 3b9e61cdb1 Docs: Add missing `@since` tags for `WP_Post` properties and methods.
Props keesiemeijer.
Fixes #41306.
Built from https://develop.svn.wordpress.org/trunk@41036


git-svn-id: http://core.svn.wordpress.org/trunk@40886 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-13 12:08:41 +00:00
Weston Ruter 2ca21c444e REST API: Remove `_wpnonce` value from being used in hashed oEmbed proxy cache key.
Amends [40628].
Props r-a-y, westonruter.
See #40450.
Fixes #41048.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40885 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-12 22:51:40 +00:00
Drew Jaynes 597eeb9bb8 Docs: Use a hash notation for the `$args` parameter to describe the `fields` argument in the DocBlock for `wp_get_post_terms()`.
Also, the `$taxonomy` parameter can accept either a string or array of taxonomies.

Props ohryan for the initial tip.
See #41017.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40884 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-12 22:21:41 +00:00
Drew Jaynes dfab72aa35 Docs: Default for the `orderby` argument in `wp_list_categories()` is actually 'name', not 'ID'.
Props uicestone.
See #41017.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40883 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-12 22:06:39 +00:00
Sergey Biryukov 581707de6c Docs: Add a `@global` entry for `$allowed_files` in `get_file_description()`.
Props div33, ajayghaghretiya1.
Fixes #41294.
Built from https://develop.svn.wordpress.org/trunk@41032


git-svn-id: http://core.svn.wordpress.org/trunk@40882 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-12 21:40:40 +00:00
Sergey Biryukov 058c2c5ca4 Docs: Fix typo in `wp_suspend_cache_invalidation()` description.
Props euthelup, milana_cap.
Fixes #41301.
Built from https://develop.svn.wordpress.org/trunk@41031


git-svn-id: http://core.svn.wordpress.org/trunk@40881 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-12 21:26:44 +00:00
Sergey Biryukov 86f9360280 Docs: Add a `@global` entry for `$wpdb` in `display_setup_form()`.
Props mitraval192.
Fixes #41300.
Built from https://develop.svn.wordpress.org/trunk@41030


git-svn-id: http://core.svn.wordpress.org/trunk@40880 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-12 21:03:42 +00:00
Peter Westwood f3326b10af Tests: Rename this file to match our coding standards.
Built from https://develop.svn.wordpress.org/trunk@41029


git-svn-id: http://core.svn.wordpress.org/trunk@40879 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-12 20:56:45 +00:00
Weston Ruter 37cbe7add1 Widgets: Enqueue assets needed by media and text widgets in their `_register_one()` methods.
The `WP_Widget::_register_one()` method is more guaranteed to be called as opposed to its wrapper `WP_Widget::_register()` which plugins may bypass for performance reasons.

Amends [40631], [40640].
See #35243, #32417.
Fixes #41021.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40878 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-11 22:47:43 +00:00
Sergey Biryukov 6724151d41 Users: Add a "View" link to users listed on the Users screen that points to the user's author archive.
Props ryanplas, johnjamesjacoby, viralsampat, Girishpanchal, xkon.
Fixes #38085.
Built from https://develop.svn.wordpress.org/trunk@41027


git-svn-id: http://core.svn.wordpress.org/trunk@40877 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-11 13:30:44 +00:00
Sergey Biryukov a545745a54 Shortcodes: Allow using single quotes for empty value attributes.
Props enrico.sorcinelli.
Fixes #37304.
Built from https://develop.svn.wordpress.org/trunk@41026


git-svn-id: http://core.svn.wordpress.org/trunk@40876 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-11 00:54:41 +00:00
Sergey Biryukov f75e623eae Comments: In `WP_Comments_List_Table::extra_tablenav()`, save the state of `::has_items()` to a static variable, so that the value is consistent between top and bottom navigation.
This prevents "Empty Spam" and "Empty Trash" buttons from disappearing if there's only one page of comments in Spam/Trash.

Fixes #40975.
Built from https://develop.svn.wordpress.org/trunk@41022


git-svn-id: http://core.svn.wordpress.org/trunk@40872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-10 23:05:40 +00:00
Adam Silverstein 5cfbf0519b Media: library grid view - improve browser history support.
Set view state properly when navigating history using the browser back/next button in the media library (grid view). Correctly handle navigating, search, image detail view and image edit mode. Also handle bookmarking/reloading.

Props kucrut, joemcgill, afercia.
Fixes #31846.


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


git-svn-id: http://core.svn.wordpress.org/trunk@40871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-10 19:08:41 +00:00
Weston Ruter 1af3aa0000 Customize: Restrict click target of menu deletion, moving to button from its container.
Props westonruter, afercia.
Fixes #40981.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40870 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-10 18:40:44 +00:00
Andrea Fercia b8e2496645 Administration: in `WP_List_Table->pagination()`, properly concatenate CSS classes for the pagination links when `infinite_scroll` is set to true.
Props SGr33n.
See #19815.
Fixes #40003.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40869 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-09 11:12:43 +00:00
Adam Silverstein f858551592 Date/Time: Add unit tests for the `human_time_diff` function.
Verify that `human_time_diff` works as expected for minute, hour and day intervals. Test that rounding works as expected when the time difference is near the rounding margin.

Props SGr33n.
Fixes #38773.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-07 17:08:45 +00:00
Sergey Biryukov 96ceffa552 Media: Use a filename instead of a URL in image header tests to avoid triggering an outbound HTTP request causing an ImageMagick exception on some configurations.
Props danielbachhuber.
Fixes #41216.
Built from https://develop.svn.wordpress.org/trunk@41017


git-svn-id: http://core.svn.wordpress.org/trunk@40867 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-07 00:07:40 +00:00
Sergey Biryukov 452871e0c3 Media: Correct the order of arguments passed to assertions in `Tests_Image_Header`.
Props danielbachhuber.
See #41216.
Built from https://develop.svn.wordpress.org/trunk@41016


git-svn-id: http://core.svn.wordpress.org/trunk@40866 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-06 23:58:41 +00:00
Sergey Biryukov 6b0c0592de Docs: Update the DocBlock for `_WP_Editors::wp_fullscreen_html()` after [32677].
See #30949.
Built from https://develop.svn.wordpress.org/trunk@41015


git-svn-id: http://core.svn.wordpress.org/trunk@40865 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-06 23:44:40 +00:00
Sergey Biryukov 6dc56c4558 Docs: Update the list of static variables in `wptexturize()` DocBlock after [32863].
Props ajayghaghretiya1.
Fixes #41260.
Built from https://develop.svn.wordpress.org/trunk@41014


git-svn-id: http://core.svn.wordpress.org/trunk@40864 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-06 21:02:42 +00:00
Drew Jaynes fdaf531325 Options: Pass `$default` as a new parameter to the `pre_option_{$option}` and `pre_site_option_{$option}` filters.
This change standardizes some language in the parameter descriptions between the two hook docs in an effort to reduce confusion between the `$pre_option` pseudo-parameters and the new `$default` ones. `$pre_option` is the truthy value used to short-circuit the `get_*option()` call, `$default` is the value passed to the `get_*option()` returned in the event that 1) a short circuit isn't performed, 2) the option doesn't exist.

Props sc0ttkclark.
Fixes #41254.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40863 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-06 15:12:44 +00:00
Weston Ruter 6b907d8437 Customize: Prevent edge case fatal error when attempting to save changes to a changeset that had previously been corrupted.
Check return value of `WP_Customize_Manager::get_changeset_post_data()` and return if error instead of assuming it is an array.

Amends [38810].
See #30937.
Fixes #41252.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40862 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-06 07:05:43 +00:00
Ryan McCue 51ba397e29 REST API: Fix brittle search test.
This was previously searching for the user ID, which isn't really what it was meant to do. As a result, the test can break if that number appears in any other user information.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40861 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-06 01:35:41 +00:00
Joe McGill 37b500c4bd Sanity check $uploaderToggler in wp.media.view.UploaderInline.
This ensures `$uploaderToggler` exists before checking length so any views
extending or scripts accessing this view, won't encounter errors that stop execution.

Props Blackbam, yahil.
Fixes #41231.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40859 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-06 00:41:41 +00:00
Sergey Biryukov d8c50c7a12 Menus: Make sure `current-menu-parent` and `current-menu-ancestor` classes are properly set for parent items of post type archive submenu items.
Props mrwweb, ajoah, welcher.
Fixes #39800.
Built from https://develop.svn.wordpress.org/trunk@41008


git-svn-id: http://core.svn.wordpress.org/trunk@40858 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 21:31:44 +00:00
Sergey Biryukov 2ca39ce60d Docs: Add a `@global` entry for `$tinymce_version` in `_WP_Editors::default_settings()`.
Props tejas5989.
Fixes #41244.
Built from https://develop.svn.wordpress.org/trunk@41007


git-svn-id: http://core.svn.wordpress.org/trunk@40857 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 18:55:44 +00:00
James Nylen 1ef845b268 Ensure that `wp-api.js` test fixtures do not change with `WP_TESTS_*` constants.
Previously, changing these constants in `wp-tests-config` would cause PHPUnit to regenerate `wp-api-generated.js` with different values.

This commit uses the existing mechanism to also "freeze" all values that would change as a result of changing these constants.

Fixes #41123.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40856 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 09:30:42 +00:00
Sergey Biryukov 30bad141ad Docs: Add a `@global` entry for `$wpdb` in `WP_Network_Query::get_network_ids()`.
Props afzalmultani.
Fixes #41238.
Built from https://develop.svn.wordpress.org/trunk@41005


git-svn-id: http://core.svn.wordpress.org/trunk@40855 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 09:23:42 +00:00
Sergey Biryukov 98458cb6e3 Docs: Add a `@global` entry for `$wp_post_statuses` in `WP_Customize_Nav_Menus::make_auto_draft_status_previewable()`.
Props afzalmultani.
See #41238.
Built from https://develop.svn.wordpress.org/trunk@41004


git-svn-id: http://core.svn.wordpress.org/trunk@40854 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 09:21:41 +00:00
Sergey Biryukov b916e8c727 Docs: Add a `@global` entry for `$wp` in `redirect_canonical()`.
Props afzalmultani.
See #41238.
Built from https://develop.svn.wordpress.org/trunk@41003


git-svn-id: http://core.svn.wordpress.org/trunk@40853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 09:19:43 +00:00
Sergey Biryukov dbba2af814 Docs: Add a `@global` entry for `$wp_widget_factory` in `WP_Customize_Widgets::get_selective_refreshable_widgets()`.
Props jankimoradiya.
Fixes #41243.
Built from https://develop.svn.wordpress.org/trunk@41002


git-svn-id: http://core.svn.wordpress.org/trunk@40852 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 08:23:41 +00:00
Weston Ruter 7b28ff2f2a Customize: Fix logic to re-expand a newly inserted nav menu section after placeholder section is replaced.
Fixes todo from Menu Customizer feature plugin: https://github.com/voldemortensen/menu-customizer/commit/0f4ea4e#diff-daa55fade2253f26ccbe02f71058841cR2330
Amends [32806].
Props greuben.
See #32576.
Fixes #40997.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40851 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-05 00:44:41 +00:00
Weston Ruter 046fb8a987 Widgets: Let Custom HTML widget be "wide" as the Text widget is.
Also update `WP_Customize_Widgets::$core_widget_id_bases` with the new list of core widgets.

Props obenland, westonruter.
See #40907, #40951.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40850 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-04 21:01:41 +00:00
Boone Gorges fa2f4b047a Avoid PHP notices when checking termmeta capabilities against a non-existent term.
Previously, checks like `current_user_can( 'edit_term_meta', $term_id )`
returned the proper value, but generated a PHP notice due to the fact
that `get_term( $term_id )` could, in certain instances, return
`WP_Error` objects.

Props caercam.
Fixes #40891.
Built from https://develop.svn.wordpress.org/trunk@40999


git-svn-id: http://core.svn.wordpress.org/trunk@40849 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-04 19:59:40 +00:00
Drew Jaynes 64cb817527 Docs: Add a missing return notation and to the DocBlock for `WP_Session_Tokens::get_instance()`.
Also adds an inline reference to the `session_token_manager` hook in the description.

Props Shelob9 for the initial patch.
Fixes #40102.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40848 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-04 17:16:42 +00:00
Sergey Biryukov c6ab84c4c4 General: Always use colon instead of a semicolon in `switch()` control structures.
Props jrf.
Fixes #41234.
Built from https://develop.svn.wordpress.org/trunk@40997


git-svn-id: http://core.svn.wordpress.org/trunk@40847 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-04 09:52:41 +00:00
Andrew Ozz 8c47285f4e TinyMCE: fix adding the `<!-- more -->` tag when the editor is inline.
Props iseulde.
Fixes #41230.
Built from https://develop.svn.wordpress.org/trunk@40996


git-svn-id: http://core.svn.wordpress.org/trunk@40846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-03 21:41:41 +00:00
Andrew Ozz dcc372e098 Customizer: improve setting the TinyMCE modals z-index.
Props westonruter, greuben.
See #41158.
Built from https://develop.svn.wordpress.org/trunk@40995


git-svn-id: http://core.svn.wordpress.org/trunk@40845 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-03 21:18:44 +00:00
Boone Gorges dc35b759be Introduce `wp_get_object_terms_args` filter.
This filter allows developers to modify the arguments passed to
`wp_get_object_terms()` before the query is run.

Props enrico.sorcinelli.
Fixes #35925.
Built from https://develop.svn.wordpress.org/trunk@40994


git-svn-id: http://core.svn.wordpress.org/trunk@40844 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-02 18:29:42 +00:00
Peter Wilson 2b25a87d1b Capabilities: Prevent users having the `do_not_allow` capability.
Meta capabilities use the capability `do_not_allow` to indicate a user should be blocked from performing a particular action. This ensures users can not have the capability as it would cause unexpected behaviour.

Props johnbillion.
Fixes #41059.


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


git-svn-id: http://core.svn.wordpress.org/trunk@40843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-02 05:16:45 +00:00
Sergey Biryukov 6fda2e67b0 Docs: Add a `@global` entry for `$wp_filter` in `wp_start_object_cache()`.
Props bhaveshkhadodara.
Fixes #41222.
Built from https://develop.svn.wordpress.org/trunk@40992


git-svn-id: http://core.svn.wordpress.org/trunk@40842 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-01 22:13:41 +00:00
Andrew Ozz 65f1051697 TinyMCE: respect the `Disable the visual editor when writing` user setting and don't output the TinyMCE components when using `wp_enqueue_editor()`.
Fixes #40960 for trunk.
Built from https://develop.svn.wordpress.org/trunk@40991


git-svn-id: http://core.svn.wordpress.org/trunk@40841 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-01 21:31:47 +00:00
Andrew Ozz 16167ffe41 Text widget: bump the TinyMCE modals z-index to 500001 so they show in the Customizer.
Props greuben.
Fixes #41158 for trunk.
Built from https://develop.svn.wordpress.org/trunk@40990


git-svn-id: http://core.svn.wordpress.org/trunk@40840 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-01 20:33:41 +00:00