Commit Graph

72 Commits

Author SHA1 Message Date
Boone Gorges
a11372afe1 Improved 'orderby' meta syntax in WP_User_Query.
Recent commits have added the ability to order query results by specific
clauses of the 'meta_query' parameter (comments [31467], posts [31312] and
[31340]). The current changeset ports the same functionality to `WP_User_Query`.

Also introduced is the ability to pass the value of `$meta_key` to 'orderby'.

The internals of `WP_User_Query::prepare_users()` had to be reordered
somewhat to support these changes, primarily to ensure that the `meta_query`
object generates its SQL clauses before the 'orderby' parameter is parsed.

See #31265.

git-svn-id: https://develop.svn.wordpress.org/trunk@31669 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-07 18:37:05 +00:00
Boone Gorges
abbbde190c In WP_User_Query, $meta_query should be a class property rather than a local variable.
This provides better parity with other query classes, and makes it possible to
write more direct unit tests.

See #31265.

git-svn-id: https://develop.svn.wordpress.org/trunk@31665 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-07 16:34:42 +00:00
Boone Gorges
a510aafe46 Fix documentation whitespace after [31663].
See #31265.

git-svn-id: https://develop.svn.wordpress.org/trunk@31664 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-07 16:07:26 +00:00
Boone Gorges
945fd67d7b Improve 'orderby' syntax for WP_User_Query.
This changeset ports a number of 'orderby' features from `WP_Query` and
`WP_Comment_Query`:

* Allow multiple 'orderby' values to be passed as a space-separated list.
* Allow multiple 'orderby' values to be passed as a flat array.
* Allow multi-dimensional 'orderby', with orderby fields as array keys and ASC/DESC as the corresponding values.

See #31265.

git-svn-id: https://develop.svn.wordpress.org/trunk@31663 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-07 16:05:11 +00:00
Drew Jaynes
44f0a2976a Correct a typo in the hash notation for wp_insert_user(): The argument name should be $user_registered not $date_registered.
Props floriansimeth.
Fixes #31513.


git-svn-id: https://develop.svn.wordpress.org/trunk@31608 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-04 09:50:34 +00:00
Boone Gorges
76b84b9231 Add orderby=meta_value_num support to WP_User_Query.
Props tyxla, genkisan.
Fixes #27887.

git-svn-id: https://develop.svn.wordpress.org/trunk@31369 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-08 16:58:14 +00:00
Sergey Biryukov
63ee24789d In wp_update_user(), make sure $userdata['ID'] is set before using it.
props tyxla.
fixes #31097.

git-svn-id: https://develop.svn.wordpress.org/trunk@31269 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-22 14:45:14 +00:00
Scott Taylor
5acc6bdb58 In PHP 5.0.0, is_a() became deprecated in favour of the instanceof operator. Calling is_a() would result in an E_STRICT warning.
In PHP 5.3.0, `is_a()` is no longer deprecated, and will therefore no longer throw `E_STRICT` warnings.

To avoid warnings in PHP < 5.3.0, convert all `is_a()` calls to `$var instanceof WP_Class` calls.

`instanceof` does not throw any error if the variable being tested is not an object, it simply returns `false`.

Props markoheijnen, wonderboymusic.
Fixes #25672.


git-svn-id: https://develop.svn.wordpress.org/trunk@31188 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-16 01:05:52 +00:00
Scott Taylor
bbc7ca2d0d In WP_User_Query, only call magic method internals against a whitelist of properties, $compat_fields.
See #30891.


git-svn-id: https://develop.svn.wordpress.org/trunk@31144 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-11 21:59:54 +00:00
Scott Taylor
349e5cb318 Adding a @return annotation to constructors is generally not recommended as a constructor does not have a meaningful return value. Constructors do not have meaningful return values, anything that is returned from here is discarded.
See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31126 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-10 06:53:48 +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
Andrew Nacin
0375edc8c6 No need for wp_get_password_hint() to be prefixed as if it is private.
see #21243.


git-svn-id: https://develop.svn.wordpress.org/trunk@30855 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-15 08:33:48 +00:00
Drew Jaynes (DrewAPicture)
7187da0b32 Convert various uses of (optional) in core parameter descriptions to use the style prescribed in the inline documentation standards for PHP.
The style for marking parameters optional in inline PHP docs is: `@param type $var Optional. Description. Accepts. Default.`, where Accepts can be omitted on a case-by-case basis.

Props coffee2code.
Fixes #30591.


git-svn-id: https://develop.svn.wordpress.org/trunk@30753 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-06 21:23:52 +00:00
Scott Taylor
c7ce0a4d55 Improve the @param docs for src/wp-includes/user.php.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30666 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 22:10:12 +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
Drew Jaynes (DrewAPicture)
a1af1437c3 4.1 Docs Audit: Fix formatting for changelog entries in count_user_posts() and the get_usernumposts hook.
See #30469.


git-svn-id: https://develop.svn.wordpress.org/trunk@30623 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-28 12:28:23 +00:00
Andrew Nacin
d2b4df2d4f Invalidate password keys when a user's email changes.
git-svn-id: https://develop.svn.wordpress.org/trunk@30430 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-20 13:39:03 +00:00
Boone Gorges
2a941720be Correct @since tag in count_user_posts() docs.
Props pavelevap, DrewAPicture.
See #21364.

git-svn-id: https://develop.svn.wordpress.org/trunk@30328 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-13 12:14:15 +00:00
Boone Gorges
3544e20e9a Introduce $post_type param for count_user_posts().
Props Caspie, engelen, DrewAPicture.
Fixes #21364.

git-svn-id: https://develop.svn.wordpress.org/trunk@30322 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-13 02:18:30 +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
Konstantin Kovshenin
6debe759a6 Use a nested meta query when querying by role in WP_User_Query.
If a user query includes a meta query together with a role argument,
nest the original meta query and append the role meta query with an
AND relationship.

fixes #23849, #27026.


git-svn-id: https://develop.svn.wordpress.org/trunk@30094 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-29 21:40:04 +00:00
John Blackbourn
bc1168e953 Rename _wp_password_hint() to _wp_get_password_hint() to bring it inline with core terminology. Fixes #21243.
git-svn-id: https://develop.svn.wordpress.org/trunk@30033 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-26 23:29:11 +00:00
Boone Gorges
1fe9707760 Accept 'orderby=include' in WP_User_Query.
This lets the results of a user query be sorted manually by the value of the
'include' param.

Props jipmoors.
Fixes #30064.

git-svn-id: https://develop.svn.wordpress.org/trunk@30016 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-24 19:50:53 +00:00
Sergey Biryukov
5ab446aab7 Move password hint text to a function. Add 'password_hint' filter.
props convissor.
fixes #21243.

git-svn-id: https://develop.svn.wordpress.org/trunk@29962 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-18 20:20:56 +00:00
Boone Gorges
64bc8466db Support date_query by user_registered in WP_User_Query.
Props ChriCo, nacin.
Fixes #27283.

git-svn-id: https://develop.svn.wordpress.org/trunk@29934 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-17 01:36:36 +00:00
Drew Jaynes (DrewAPicture)
d8ba2cf553 Add inline documentation for WP_User_Query default arguments in the form of a hash notation.
Adds documentation pointers from the class-level doc for `WP_User_Query`, as well as the `get_users()` doc.

Props tschutter.
Fixes #29846.


git-svn-id: https://develop.svn.wordpress.org/trunk@29843 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-06 15:35:49 +00:00
Boone Gorges
6ffb0fcafb Always sanitize user_nicename in wp_insert_user().
Previously, a 'user_nicename' parameter passed into the function was
unsanitized. This could result in a mismatch between the sanitized nicename
generated automatically at user creation, resulting in broken author archive
permalinks.

Props joemcgill.

Fixes #29696.

git-svn-id: https://develop.svn.wordpress.org/trunk@29819 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-02 18:53:24 +00:00
Sergey Biryukov
1ec860298d Correct @return value for WP_User_Query::get_total().
props jesin.
fixes #29656.

git-svn-id: https://develop.svn.wordpress.org/trunk@29744 602fd350-edb4-49c9-b593-d223f7449a82
2014-09-13 22:23:12 +00:00
Andrew Nacin
e3345398aa Rename the public methods in the session tokens API.
Introduces a new get( $token ) method. get_token() would not have made sense and spurred the overall renaming. Public methods are now get, get_all, verify, create, update, destroy, destroy_others, and destroy_all.

The protected abstract methods designed for alternative implementations remain the same.

props mdawaffe.
see #20276.


git-svn-id: https://develop.svn.wordpress.org/trunk@29635 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-27 02:06:53 +00:00
Drew Jaynes (DrewAPicture)
a84d50dfa3 Fix some words that aren't words.
See #28885.


git-svn-id: https://develop.svn.wordpress.org/trunk@29454 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-09 19:29:37 +00:00
Scott Taylor
6723459a79 Add an action, pre_get_users, in WP_User_Query::prepare_query().
Props rmccue.
Fixes #29084.


git-svn-id: https://develop.svn.wordpress.org/trunk@29363 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-02 20:45:07 +00:00
Andrew Nacin
97fcbef707 Tie cookies and nonces to user sessions so they may be invalidated upon logout.
Sessions are stored in usermeta via WP_User_Meta_Session_Tokens, which extends the abstract WP_Session_Tokens class. Extending WP_Session_Tokens can allow for alternative storage, such as a separate table or Redis.

Introduces some simple APIs for session listing and destruction, such as wp_get_active_sessions() and wp_destroy_all_sessions().

This invalidates all existing authentication cookies, as a new segment (the session token) has been added to them.

props duck_, nacin, mdawaffe.
see #20276.


git-svn-id: https://develop.svn.wordpress.org/trunk@29221 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-18 09:12:05 +00:00
Drew Jaynes (DrewAPicture)
7ad77d58ee Add periods to short descriptions for magic methods added in [28501], [28521], and [28524].
See #22234 and #28885.


git-svn-id: https://develop.svn.wordpress.org/trunk@29165 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-14 01:11:55 +00:00
Drew Jaynes (DrewAPicture)
844efdf398 Fill out inline documentation for magic methods added to the WP_User_Query class in [28528].
See #27881, #22234 and #28885.


git-svn-id: https://develop.svn.wordpress.org/trunk@29140 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-13 23:34:01 +00:00
Drew Jaynes (DrewAPicture)
d42f6c10af Convert default arguments documentation for wp_insert_user() into a hash notation.
See #28841.


git-svn-id: https://develop.svn.wordpress.org/trunk@29116 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-12 00:20:14 +00:00
Drew Jaynes (DrewAPicture)
0cef622342 Convert default arguments documentation for wp_dropdown_users() into a hash notation.
See #28841.


git-svn-id: https://develop.svn.wordpress.org/trunk@29115 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-12 00:07:18 +00:00
Dominik Schilling (ocean90)
c12d10d0b9 Add missing filter doc, see [29043].
see #27627.

git-svn-id: https://develop.svn.wordpress.org/trunk@29102 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-11 19:23:25 +00:00
John Blackbourn
bdeb3348ed Persist the "Remember Me" state of the auth cookie when changing your own password. Props jesin. Fixes #27627.
git-svn-id: https://develop.svn.wordpress.org/trunk@29043 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-09 18:05:00 +00:00
Scott Taylor
dcd7ff837d Use the WPINC constant when loading class-phpass.php
Props wojtek.szkutnik
See #14157.


git-svn-id: https://develop.svn.wordpress.org/trunk@28903 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-29 22:11:44 +00:00
Scott Taylor
119add95d9 Remove title attributes in wp_authenticate_username_password().
Props joedolson.
Fixes #26547.


git-svn-id: https://develop.svn.wordpress.org/trunk@28870 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-27 20:04:52 +00:00
Scott Taylor
0d0cdfe1c7 Don't use variable variables in wp_insert_user().
Add a local array, `$meta`, to provide substantial disambiguation among variables. 

See #27881.


git-svn-id: https://develop.svn.wordpress.org/trunk@28740 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-11 18:20:57 +00:00
Scott Taylor
fe2ca3965e Set a variable for like-escaped string before looping in WP_User_Query::get_search_sql().
Props miqrogroove.
Fixes #10041.


git-svn-id: https://develop.svn.wordpress.org/trunk@28722 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-10 02:44:35 +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
Drew Jaynes (DrewAPicture)
cff4631f00 Add inline documentation for the option_none_value argument added to wp_dropdown_users|categories() in [28564].
Fixes #16625.


git-svn-id: https://develop.svn.wordpress.org/trunk@28570 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-24 05:38:06 +00:00
Scott Taylor
cd7d3f2ee8 wp_dropdown_pages() allows option_none_value to be passed. Add that arg to the $defaults for wp_dropdown_users() and wp_dropdown_categories() as well.
Props solarissmoke. 
Fixes #16625.


git-svn-id: https://develop.svn.wordpress.org/trunk@28564 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-23 20:46:18 +00:00
Scott Taylor
02eba613a5 Add access modifiers to WP_User_Query.
Add magic methods for BC: __get(), __set(), __isset(), __unset(), and
__call().

See #27881, #22234.


git-svn-id: https://develop.svn.wordpress.org/trunk@28528 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-19 15:47:33 +00:00
Scott Taylor
0d92bb2552 Eliminate use of extract() in wp_insert_user().
See #22400.


git-svn-id: https://develop.svn.wordpress.org/trunk@28454 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-16 18:15:00 +00:00
Scott Taylor
a3c9e611a8 Eliminate the use of extract() in wp_dropdown_users().
See #22400.


git-svn-id: https://develop.svn.wordpress.org/trunk@28420 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-15 05:17:12 +00:00
Andrew Nacin
aa08fb55ce User Query: Don't blindly re-append new meta queries for capabilities.
fixes #21119.


git-svn-id: https://develop.svn.wordpress.org/trunk@28087 602fd350-edb4-49c9-b593-d223f7449a82
2014-04-12 19:03:56 +00:00