Commit Graph

4462 Commits

Author SHA1 Message Date
Dominik Schilling (ocean90)
0a77429937 Passwords: Trigger a wp-check-valid-field event when the password field is filled with a password by generatePassword().
Updates event handler in `wpAjax.invalidateForm()` to support `wp-check-valid-field`.

See #33406.

git-svn-id: https://develop.svn.wordpress.org/trunk@34114 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 10:38:32 +00:00
Scott Taylor
c16e8b5616 Add sanity checks in map_meta_cap(), return 'do_not_allow' when posts don't exist.
Adds unit test.

Props ocean90, nerrad, filosofo.
Fixes #23162.


git-svn-id: https://develop.svn.wordpress.org/trunk@34113 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 04:43:48 +00:00
Boone Gorges
5a6f66faad Send multisite site/user signup emails via hooked functions.
Site and user signup notifications are moved to the new actions
`'after_signup_site'` and `'after_signup_user'`. Site and user activation
notifications are moved to the existing actions `'wpmu_activate_blog'` and
`'wpmu_activate_user'`.

Props dshanske, thomaswm, jeremyfelt.
See #33587..

git-svn-id: https://develop.svn.wordpress.org/trunk@34112 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 03:27:47 +00:00
Scott Taylor
adfd136bee Move Walker_Category and Walker_CategoryDropdown into their own files via svn cp. Remove them from category-template.php. Load them in category.php. svn cp category.php over to category-functions.php, which also loads now in category.php.
See #33413.


git-svn-id: https://develop.svn.wordpress.org/trunk@34110 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 03:09:37 +00:00
Scott Taylor
1ccae571d9 Move Walker_Page and Walker_PageDropdown into their own files via svn cp. Remove them from post-template.php. Load them in post.php.
`post-template.php` loads after `post.php` in `wp-settings.php`. It could probably also be loaded in `post.php`, but avoiding that for the moment.

See #33413.


git-svn-id: https://develop.svn.wordpress.org/trunk@34109 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:58:40 +00:00
Scott Taylor
2d5945f0fc In wp_link_pages(), ensure that $prev is greater than 0.
Props betzster.
Fixes #25273.


git-svn-id: https://develop.svn.wordpress.org/trunk@34108 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:45:33 +00:00
Boone Gorges
6064924c18 Send password-change email notifications via hook.
`wp_password_change_notification()` is now called at the 'after_password_reset'
action, rather than being invoked directly from the `reset_password()` function.

In order to make it possible to call `wp_password_change_notification()` as a
`do_action()` callback, the function signature has to be changed so that the
`$user` parameter is expected to be a value rather than a reference. Since
PHP 5.0, objects are passed by reference, so `&$user` was unnecessary anyway.

Props dshanske, thomaswm.
See #33587.

git-svn-id: https://develop.svn.wordpress.org/trunk@34107 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:44:41 +00:00
boonebgorges
05d4233956 Send comment notification emails via a hooked function.
Previously, `wp_notify_postauthor()` and `wp_notify_moderator()` were called
directly from `wp_new_comment()`, making it difficult to modify or suppress
default notification emails.

Props dshanske, thomaswm.
See #33587.

git-svn-id: https://develop.svn.wordpress.org/trunk@34106 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:16:02 +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
b52b5893c4 Pass $r and $pages to the 'wp_dropdown_pages' and 'wp_list_pages' filters.
Props bigdawggi, SergeyBiryukov.
Fixes #23734.


git-svn-id: https://develop.svn.wordpress.org/trunk@34103 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 01:31:12 +00:00
Scott Taylor
184e058681 Objects are passed by-reference since PHP 5. In _get_custom_object_labels(), cast $object->labels back to object before returning. This function is weird.
Adds unit test.

Props Toro_Unit.
Fixes #33023.


git-svn-id: https://develop.svn.wordpress.org/trunk@34102 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 01:22:23 +00:00
Scott Taylor
5d0bc76040 Check if the $post_type passed to get_post_type_object() is a scalar value. Non-scalars were producing PHP warnings.
Adds unit tests.

Props Kloon.
Fixes #30013.


git-svn-id: https://develop.svn.wordpress.org/trunk@34100 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 00:02:05 +00:00
Jeremy Felt
13dd966554 Multisite: Implement the get_by_path method in WP_Network.
Move the internals of `get_network_by_path()` to `WP_Network()` and allow network objects to be retrieved by passing a requested domain and path.

Props johnjamesjacoby, jeremyfelt, drewapicture, wonderboymusic.
See #31985.


git-svn-id: https://develop.svn.wordpress.org/trunk@34099 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-13 23:39:20 +00:00
Scott Taylor
f20622f394 In edit_post_link(), add an argument for the class attribute that defaults to post-edit-link.
Props voldemortensen.
Fixes #30563.


git-svn-id: https://develop.svn.wordpress.org/trunk@34098 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-13 23:33:30 +00:00
Jeremy Felt
591a9aa73c Multisite: Introduce the WP_Network class.
A `WP_Network` object initially matches a row from `wp_site` and is populated with additional properties used by WordPress core. The first iteration is used to retrieve an existing network based on data passed to the class.

* A network can be retrieved by its ID through `WP_Network::get_instance()`, following in the steps of `WP_Post` and `WP_Comment`.
* A network object can be created or completed by passing initial properties in as a standard object to `new WP_Network()`.

Using these methods, we are now able to populate the global `$current_site` during load via this class.

Props johnjamesjacoby, jeremyfelt, drewapicture, wonderboymusic.
See #31985.


git-svn-id: https://develop.svn.wordpress.org/trunk@34097 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-13 23:30:57 +00:00
Weston Ruter
fd1dbfe003 Customize: Remove redundant aria-label attributes.
Adds an `$options` array argument to `WP_Screen::render_screen_options()` to allow the `div#screen-options-wrap` element to be omitted when `wrap` value is `false`.

Props afercia, westonruter.
Fixes #33182.


git-svn-id: https://develop.svn.wordpress.org/trunk@34093 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-13 06:15:42 +00:00
Boone Gorges
829ae5f4ce Fail gracefully when checking mapped cap against unregistered post type.
Post type objects are reponsible for mapping their capabilities to core caps.
As a result, when the post type is no longer registered, the caps are no
longer mapped. This causes problems when a post is left in the database after
the post type is no longer present, and WP does an 'edit_post' or other cap
check against it: a PHP notice is thrown, and the cap check always fails.

As a more graceful fallback, we map all post-type-dependent caps onto
'edit_others_posts', which allows highly privileged users to be able to
access orphaned content (such as comments belonging to disabled post types),
while minimizing the possibility of unintended privilege escalation.

We also add a `_doing_it_wrong()` notice, so that developers and site
administrators are aware that the cap mapping is failing in the absence of
the registered post type.

Props mitchoyoshitaka, DrewAPicture, imath, codeelite, boonebgorges, nofearinc, SergeyBiryukov, jorbin, dlh.
Fixes #16956.

git-svn-id: https://develop.svn.wordpress.org/trunk@34091 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 21:26:57 +00:00
Boone Gorges
4fdfdb6078 Use stricter sanitization for meta query clause keys.
By forcing all clause keys to be strings, we make it possible to use strict
comparison when validating values of 'orderby' as passed to `WP_Query`. This
eliminates situations where the presence of numeric clause keys could result
in an improperly validated 'orderby' value.

Props nikolov.tmw.
Fixes #32937.

git-svn-id: https://develop.svn.wordpress.org/trunk@34090 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 21:05:14 +00:00
Boone Gorges
dcbd8c6c3d Allow setup_postdata() to accept a post ID.
Previously, it accepted only a full post object.

Props sc0ttclark, mordauk, wonderboymusic.
Fixes #30970.

git-svn-id: https://develop.svn.wordpress.org/trunk@34089 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 20:57:06 +00:00
Boone Gorges
4ebab4dc16 Remove extraneous table join in get_adjacent_post().
Since [29248], a table join has not been necessary to process the
`$excluded_terms` parameter of `get_adjacent_post()`. Aside from adding extra
overhead, this join meant that post records that don't have any corresponding
rows in `wp_term_relationships` were erroneously excluded from results.

Fixes #32833.

git-svn-id: https://develop.svn.wordpress.org/trunk@34088 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 20:33:07 +00:00
Dominik Schilling (ocean90)
ed36c88b73 Revert [34013] and parts of [33970].
* `_WP_Editors::wp_mce_translation()` can't be changed without changing strings in TinyMCE and plugins.
* `\u2026` is escaped by `json_encode()` to `\\u2026`, makes `\u2026` visible in our UI.

See #32875.

git-svn-id: https://develop.svn.wordpress.org/trunk@34087 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 20:02:43 +00:00
Scott Taylor
db3a7133f2 In wp_insert_post(), when setting $post_author, use isset() instead of ! empty() to allow 0 to be passed as the value for $post_author.
Adds unit tests.

Props ericdaams, wonderboymusic.
Fixes #32585.


git-svn-id: https://develop.svn.wordpress.org/trunk@34085 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 18:53:56 +00:00
Scott Taylor
9eb5abbccb wp_delete_post(): add a filter, 'pre_delete_post', to allow bailout from the function if the filter returns a non-null value.
Props boonebgorges.
Fixes #32933.


git-svn-id: https://develop.svn.wordpress.org/trunk@34082 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 15:58:09 +00:00
Scott Taylor
8ef82f4792 sanitize_post(): the default value for $context is 'display'. The documentation says the default for sanitize_post_field() is 'display', but there is no default for the arg. Make the argument: $context = 'default'.
Props morganestes.
Fixes #33117.


git-svn-id: https://develop.svn.wordpress.org/trunk@34081 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 15:45:15 +00:00
Scott Taylor
0b8101849e sanitize_post() is polymorphic, add an is_array() check for $post before operating on it as an array.
Props morganestes.
Fixes #33118.


git-svn-id: https://develop.svn.wordpress.org/trunk@34080 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 15:37:50 +00:00
Scott Taylor
b76864660c Comments: get_comments_link() should return a link with #respond as the hash instead of #comments if get_comments_number() returns 0.
Props cgrymala, wonderboymusic.
Fixes #19893.


git-svn-id: https://develop.svn.wordpress.org/trunk@34075 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 07:35:05 +00:00
Boone Gorges
b7c8dbf4a2 Better default values in WP_Query::get_queried_object().
Setting the default value of the `queried_object_id` property to `0` meant
that, when called early enough in the WP bootstrap, `get_queried_object()`
could short-circuit the normal query by fooling it into thinking that the
request was for a page with id 0. Setting the default value to `null` instead
avoids this problem.

Props gradyetc, jazbek.
Fixes #31355.

git-svn-id: https://develop.svn.wordpress.org/trunk@34073 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 03:36:12 +00:00
Scott Taylor
dd55363884 Comments: comment_link() currently takes no arguments, yet get_comment_link() does. Allow comment_link() to optionally take the same arguments.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34071 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 03:15:14 +00:00
Scott Taylor
0f2078bc9e When clicking "Show More Comments" in the Comments meta box on the Edit Post screen, change the click behavior to call a new class method on commentsBox, ->load(), that resets st (cool name) to the number of visible <tr>s before calling ->get(). This will account for spam'd and trash'd comments when returning comments at the proper offset.
Props utkarshpatel.
Fixes #33829.


git-svn-id: https://develop.svn.wordpress.org/trunk@34069 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 02:27:50 +00:00
Andrew Ozz
f855ddb134 Settings, password field: fix placement of the error icon and removal of the error class.
Props liljimmi, adamsilverstein.
Fixes #33406 for trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@34068 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 00:09:09 +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
Dominik Schilling (ocean90)
1fc0462bac Users: Import the global var $wp_hasher in wp_new_user_notification().
Adds `@global` entries to the DocBlock.

Fixes #33826.

git-svn-id: https://develop.svn.wordpress.org/trunk@34052 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 19:09:12 +00:00
Dominik Schilling (ocean90)
a870132949 Docs: Fix DocBlock formatting for wp_insert_term().
git-svn-id: https://develop.svn.wordpress.org/trunk@34051 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 18:47:03 +00:00
Scott Taylor
d595fa4223 Upgrade MediaElement to 2.18.1 - monkey-patches to allow H264 in Chromium.
Changelog: https://github.com/johndyer/mediaelement/compare/2.17.0...2.18.1

See #33798.


git-svn-id: https://develop.svn.wordpress.org/trunk@34050 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 18:34:40 +00:00
Scott Taylor
882eef809e After [34048], restore the else statement for h (height of video) in wp_underscore_video_template().
See #33798.


git-svn-id: https://develop.svn.wordpress.org/trunk@34049 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 18:29:26 +00:00
Scott Taylor
9a80acf25d In [30082], hardcoded heights were removed on the front end for videos rendered via shortcode. These values were not removed from the admin, which was an oversight.
See #33798.


git-svn-id: https://develop.svn.wordpress.org/trunk@34048 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 18:26:53 +00:00
Scott Taylor
523550c223 Revert [34009], broke uploads.
See #24934.



git-svn-id: https://develop.svn.wordpress.org/trunk@34047 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 18:03:22 +00:00
Sergey Biryukov
5b89e70f16 Use _x() instead of string hacks for weekday and month abbreviations.
Props johnbillion.
Fixes #33716.

git-svn-id: https://develop.svn.wordpress.org/trunk@34046 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 15:35:26 +00:00
Sergey Biryukov
38b4099237 Update the length limit in set_transient() docs after [34030].
Props OriginalEXE.
Fixes #13310.

git-svn-id: https://develop.svn.wordpress.org/trunk@34045 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 15:09:13 +00:00
Sergey Biryukov
f4f1ed43e7 Document @return value for wp_unschedule_event().
See #33475.

git-svn-id: https://develop.svn.wordpress.org/trunk@34044 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 11:34:52 +00:00
Scott Taylor
5cce4a3262 After [33961], pass $comment to get_comment_link() where possible to avoid extra cache/db lookups.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34042 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 06:20:56 +00:00
Scott Taylor
4a6a7edf55 After [33961], pass $comment to get_comment_date() where possible to avoid extra cache/db lookups.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34041 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 06:14:04 +00:00
Scott Taylor
9ab431873c After [33961], pass $comment to comment_class() where possible to avoid extra cache/db lookups.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34040 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 06:11:35 +00:00
Scott Taylor
db702bc3ea After [33961], pass $comment to get_comment_author_link() where possible to avoid extra cache/db lookups.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34039 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 06:04:22 +00:00
Scott Taylor
4cd30ede79 After [34015], handle orphaned comments in the Dashboard comments widget. Pass full $comment versus just passing the comment ID when possible.
See #33710.


git-svn-id: https://develop.svn.wordpress.org/trunk@34038 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 05:55:27 +00:00
Gary Pendergast
32b8ff1b14 Schema: Increase the length of wp_options.option_name.
It's pretty easy to run over the `option_name` length, which causes undefined behaviour when inserting and retrieving options. Increasing the length from `VARCHAR(64)` to `VARCHAR(191)` significantly reduces the risk of this occurring.

Because `option_name` has a `UNIQUE` index, we can only increase it to 191 characters, rather than 255. The index can only use a prefix of 191 characters, so will incorrectly restrict long different strings that have the same prefix, if we make the column longer.

Props scribu, OriginalEXE, khromov, MikeHansenMe, netweb, pento.

Fixes #13310.



git-svn-id: https://develop.svn.wordpress.org/trunk@34030 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 01:25:21 +00:00
Aaron Jorbin
4796e96ebe Flush rewrite rules upon theme switch
Themes can ( and do ) but shouldn't include custom rewrite rules.This can lead to hard to debug issues for theme authors. Theme changes are not a ultra common conclusion. Flushing the rewrite rules on theme switch will lead to a clean slate for each theme which helps make debugging easier.

And @nacin said we should do this 5 years ago at WordCamp Mid Atlantic.

Fixes #14849



git-svn-id: https://develop.svn.wordpress.org/trunk@34028 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-10 23:49:14 +00:00
John Blackbourn
bdd42a0902 Set the secure flag on the wp-saving-post cookie when using HTTPS.
This cookie doesn't contain any sensitive information, but this change brings its behaviour in line with all other core cookies.

Fixes #31056


git-svn-id: https://develop.svn.wordpress.org/trunk@34027 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-10 22:41:08 +00:00
Scott Taylor
8ed569b1ea After [33970], swap UTF-8 characters for their \u2026 escape sequence.
See #32875.


git-svn-id: https://develop.svn.wordpress.org/trunk@34013 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-10 20:29:18 +00:00
Scott Taylor
d937112e9f Grunt RTL CSS: swap-dashicons-left-right-arrows in rtlcss:properties expects double-quoted content strings in CSS. It doesn't swap single-quoted values.
Props Ankit K Gupta, yoavf, netweb.
Fixes #33786.


git-svn-id: https://develop.svn.wordpress.org/trunk@34011 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-10 20:21:57 +00:00