110 Commits

Author SHA1 Message Date
Sergey Biryukov
4e130ed78f I18N: Use better context for comment statuses.
See #35054.

git-svn-id: https://develop.svn.wordpress.org/trunk@35902 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-13 19:10:04 +00:00
Rachel Baker
d13adcc9bf Comments: Comments don’t need no Post ID when created, so they don’t be needing one to be edited.
In `wp_update_comment()` only check if the given `comment_post_ID` is valid if it isn’t `0`.  This allows comments that were created programmatically via `wp_insert_comment()` without the (optional) `comment_post_ID` parameter to be edited.

Props subharanjan for the initial patch.
Fixes #34954



git-svn-id: https://develop.svn.wordpress.org/trunk@35853 602fd350-edb4-49c9-b593-d223f7449a82
2015-12-10 15:16:51 +00:00
John Blackbourn
a8ea7d98b5 Ensure the correct error message is returned when a user attempts to comment on a post to which they do not have access.
Adds more tests.


git-svn-id: https://develop.svn.wordpress.org/trunk@35745 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-28 18:28:54 +00:00
Sergey Biryukov
3e634c753e After [35718], update the location of some files in This filter is documented in docs.
Partially reverts [33954].

Fixes #33413.

git-svn-id: https://develop.svn.wordpress.org/trunk@35725 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-22 03:50:32 +00:00
Andrew Nacin
8220d04e6d Simplify the include graph after work to split out classes.
see #33413. More details there.


git-svn-id: https://develop.svn.wordpress.org/trunk@35718 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-20 07:23:04 +00:00
Drew Jaynes
4e0b71390f Docs: The Comment API is singular.
See #33701.


git-svn-id: https://develop.svn.wordpress.org/trunk@34410 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-22 13:43:55 +00:00
Scott Taylor
8088ffafd6 Walker_Comment should be in its own file. Loaded now via wp-includes/comment.php, which makes it 100% BC.
See #33413.


git-svn-id: https://develop.svn.wordpress.org/trunk@33962 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-09 02:40:53 +00:00
Drew Jaynes
a767e01f17 Docs: Clarify the file header summary for wp-includes/comment.php, the top-level file for the core Comments API.
Also adds inline DocBlock for the `require_once()` calls that now bring in the `WP_Comment` and `WP_Comment_Query` classes, as well as core comments functionality.

See #33413. See #33701.


git-svn-id: https://develop.svn.wordpress.org/trunk@33900 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-04 01:46:29 +00:00
Scott Taylor
60ba8b05e4 Introduce WP_Comment class to model/strongly-type rows from the comments database table. Inclusion of this class is a pre-req for some more general comment cleanup and sanity.
* Takes inspiration from `WP_Post` and adds sanity to comment caching. 
* Clarifies when the current global value for `$comment` is returned. The current implementation in `get_comment()` introduces side effects and an occasion stale global value for `$comment` when comment caches are cleaned.
* Strongly-types `@param` docs
* This class is marked `final` for now

Props wonderboymusic, nacin.

See #32619.


git-svn-id: https://develop.svn.wordpress.org/trunk@33891 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-03 18:16:35 +00:00
Scott Taylor
d61669232c Comments: move WP_Comment_Query into its own file. comment.php loads the new files, so this is 100% BC if someone is loading comment.php directly. New files created using svn cp.
Creates: 
`class-wp-comment-query.php` 
`comment-functions.php` 

`comment.php` contains only top-level code. Class file only contains the class. Functions file only contains functions.

See #33413.


git-svn-id: https://develop.svn.wordpress.org/trunk@33750 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-26 04:26:29 +00:00
Scott Taylor
3b8c5529cb foreach is a statement, not a function.
See #33491.


git-svn-id: https://develop.svn.wordpress.org/trunk@33734 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-25 20:27:56 +00:00
Drew Jaynes
e853c467fd Docs: Document the default comment data arguments for wp_new_comment().
Props rachelbaker, DrewAPicture
Fixes #32369.


git-svn-id: https://develop.svn.wordpress.org/trunk@33730 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-25 17:02:51 +00:00
Scott Taylor
cb9f80009f Comments shouldn't have more than one _wp_trash_meta_status entry. When deleting _wp_trash_meta_status, also delete _wp_trash_meta_time.
See #11200.


git-svn-id: https://develop.svn.wordpress.org/trunk@33654 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-20 02:44:39 +00:00
Drew Jaynes
e47cc9e088 Fix inline documentation syntax for get_default_comment_status(), introduced in 4.3.
See [33122]. See #32891.


git-svn-id: https://develop.svn.wordpress.org/trunk@33223 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-13 21:22:06 +00:00
Helen Hou-Sandi
3762069f89 Move get_default_comment_status() to wp-includes/comment.php to sit alongside get_comment_statuses().
props nacin.
see #31168.


git-svn-id: https://develop.svn.wordpress.org/trunk@33122 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-08 15:43:24 +00:00
Boone Gorges
e8a16ec322 Allow 'comment_agent' and 'comment_author_IP' to be set via wp_new_comment().
Props mrutz, wonderboymusic, rachelbaker.
Fixes #14601.

git-svn-id: https://develop.svn.wordpress.org/trunk@33021 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-01 12:07:28 +00:00
Scott Taylor
f162be6046 For doc block types, favor bool over the few remaining booleans
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32964 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-27 01:02:12 +00:00
Boone Gorges
641e701865 In WP_Comment_Query, parse meta_query vars after the pre_get_comments hook.
[31467] included a change that involved generating meta_query SQL before the
`pre_get_comments` hook, with the result that `pre_get_comments` callbacks were
no longer able to modify comment meta queries. We fix the problem by moving the
SQL generation to after the hook.

This changeset also includes a second call to `meta_query->parse_query_vars()`,
to ensure that modifications to metadata-related query vars (such as `meta_key`
and `meta_value`) performed in `pre_get_comments` callbacks have the expected
effect on the comment query.

Fixes #32762.

git-svn-id: https://develop.svn.wordpress.org/trunk@32911 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-23 14:35:29 +00:00
Scott Taylor
89328eb69f Customizer et al, use elseif in PHP, not else if.
This was corrected via brute force in [31090].

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32874 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-19 22:00:33 +00:00
Andrew Nacin
cda77232fe Update comment caches in WP_Comment_Query, rather than comments template.
props dd32.
fixes #31081.


git-svn-id: https://develop.svn.wordpress.org/trunk@32769 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-14 19:20:12 +00:00
Scott Taylor
c8a44d437a Add @static* annotations where they are missing.
Initialize all static vars that are not, most to `null`.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32650 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 15:42:40 +00:00
Scott Taylor
19108352b9 Add missing doc blocks to comment.php.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32587 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-24 21:03:42 +00:00
Scott Taylor
88947981c3 Add missing doc blocks to class-wp-theme.php.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32547 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-22 17:30:44 +00:00
Drew Jaynes
f927722bc0 Update the DocBlock for wp_new_comment() to reference the wp_insert_comment() documentation for argument information.
Fixes #31747.


git-svn-id: https://develop.svn.wordpress.org/trunk@32500 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-13 02:53:03 +00:00
Drew Jaynes
6855376930 Document the default arguments for wp_insert_comment() as a hash notation.
Props lamosty, rachelbaker.
See #31747.


git-svn-id: https://develop.svn.wordpress.org/trunk@32499 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-13 02:50:56 +00:00
Boone Gorges
637bedeece Use table prefix for comment__in and comment__not_in SQL clauses of WP_Comment_Query.
The prefix prevents ambiguity when joining against other tables.

Props willgladstone.
Fixes #32081.

git-svn-id: https://develop.svn.wordpress.org/trunk@32461 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-08 19:44:06 +00:00
Gary Pendergast
2ce97b2984 WPDB: When checking that a string can be sent to MySQL, we shouldn't use mb_convert_encoding(), as it behaves differently to MySQL's character encoding conversion.
Props mdawaffe, pento, nbachiyski, jorbin, johnjamesjacoby, jeremyfelt.

See #32165.



git-svn-id: https://develop.svn.wordpress.org/trunk@32364 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-06 02:59:50 +00:00
Dominik Schilling (ocean90)
b0d6757918 Use HTTPS URLs for codex.wordpress.org.
see #27115.

git-svn-id: https://develop.svn.wordpress.org/trunk@32116 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-12 21:28:58 +00:00
Drew Jaynes
e3ba57d15d Remove an unnecessary inline @see tag and document the $wpdb global in two WP_Comment_Query methods.
See [31793]. See #31888.


git-svn-id: https://develop.svn.wordpress.org/trunk@32038 602fd350-edb4-49c9-b593-d223f7449a82
2015-04-05 15:46:24 +00:00
Sergey Biryukov
de44adee46 Remove obsolete $wpdb reference from get_comments() docs.
props lamosty.
fixes #31748.

git-svn-id: https://develop.svn.wordpress.org/trunk@31870 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-24 15:42:09 +00:00
Drew Jaynes
fb1873cfe6 Move the default arguments hash notation for WP_Comment_Query to the new constructor, where the argument definitions were moved in [31793].
Core style dictates that the default arguments should be documented in the same function or method where they are defined.

See [31793].
Fixes #24826.


git-svn-id: https://develop.svn.wordpress.org/trunk@31795 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-16 20:17:35 +00:00
Boone Gorges
12784e13d4 Improve method consistency in WP_Comment_Query.
* Introduce a `__construct()` method, which can accept an array of query vars.
* Move query logic out of `query()` method and into a new `get_comments()` method.
* Ensure that `$this->comments` is set whenever `get_comments()` returns a value.
* Introduce a `parse_query()` method, where query vars are parsed with default values and the 'parse_comment_query' action is fired.

These changes bring `WP_Comment_Query` syntax closer to that of `WP_Query`.

Props westonruter, morganestes, boonebgorges.
Fixes #24826.

git-svn-id: https://develop.svn.wordpress.org/trunk@31793 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-16 14:23:33 +00:00
Boone Gorges
c1b30747d5 Respect comment_date and comment_date_gmt params in wp_new_comment().
Props solarissmoke, oso96_2000.
Fixes #14279.

git-svn-id: https://develop.svn.wordpress.org/trunk@31615 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-05 02:59:47 +00:00
Scott Taylor
a524e05572 wp_insert_comment() should be checking and setting $compacted, not the non-existent $post_data.
See [31263], #21212.


git-svn-id: https://develop.svn.wordpress.org/trunk@31553 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-26 05:37:34 +00:00
Boone Gorges
8bf5fce78f Improve 'orderby' syntax for WP_Comment_Query.
Since [29027], `WP_Query` has supported an array of values for the `$orderby`
parameter, with field names as array keys and ASC/DESC as the array values.
This changeset introduces the same syntax to `WP_Comment_Query`.

We leverage the new support for multiple ORDER BY clauses to fix a bug that
causes comments to be queried in an indeterminate order when sorting by the
default `comment_date_gmt` and comments share the same value for
`comment_date_gmt`. By always including a `comment_ID` subclause at the end of
the ORDER BY statement, we ensure that comments always have a unique fallback
for sorting.

This changeset also includes improvements paralleling those introduced to
`WP_Query` in [31312] and [31340], which allow `$orderby` to accept array keys
from specific `$meta_query` clauses. This change lets devs sort by multiple
clauses of an associated meta query. See #31045.

Fixes #30478. See #31265.

git-svn-id: https://develop.svn.wordpress.org/trunk@31467 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-16 14:09:40 +00:00
Gary Pendergast
cd02bd0702 Comments: When a comment fails to insert, remove invalid characters from the email and URL fields, too.
See [31263], #21212



git-svn-id: https://develop.svn.wordpress.org/trunk@31264 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-21 23:17:08 +00:00
Gary Pendergast
b2642750ce Comments: When a comment fails to insert, remove any invalid characters and try again.
See #21212



git-svn-id: https://develop.svn.wordpress.org/trunk@31263 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-21 23:03:48 +00:00
Gary Pendergast
58d931dfc7 Allow comment_post_ID to be passed to wp_update_comment(), so that a comment can be moved to a different post.
Props tyxla, rachelbaker

Fixes #30946



git-svn-id: https://develop.svn.wordpress.org/trunk@31195 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-16 02:38:30 +00:00
Sergey Biryukov
819a53be46 Add 'user_id' to the list of fields wp_update_comment() can update.
props jphase.
fixes #30307.

git-svn-id: https://develop.svn.wordpress.org/trunk@31172 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-13 06:47:33 +00:00
Sergey Biryukov
a744bb9a5f Add 'comment_type' to the list of fields wp_update_comment() can update.
props desaiuditd.
fixes #30627.

git-svn-id: https://develop.svn.wordpress.org/trunk@31171 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-13 06:41:19 +00:00
Scott Taylor
1178e8a6e1 In WP_Comment_Query, only allow __call() to run against ->get_search_sql().
See #30891.


git-svn-id: https://develop.svn.wordpress.org/trunk@31150 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-11 22:32:44 +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
Boone Gorges
bd03b2ead8 Support array values for post-related parameters in WP_Comment_Query.
Props nprasath002, c3mdigital, ianmjones.
Fixes #20006.

git-svn-id: https://develop.svn.wordpress.org/trunk@31015 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-31 19:37:09 +00:00
Scott Taylor
4d46475b3d Improve various @param docs for src/wp-includes/*.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30681 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-01 01:33:34 +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
Dominik Schilling (ocean90)
fb8588f115 Comments: Use proper HTTP response codes for validation errors.
props miqrogroove, solarissmoke, mackensen.
fixes #11286.

git-svn-id: https://develop.svn.wordpress.org/trunk@30579 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-26 20:16:47 +00:00
Boone Gorges
10b611b0c3 Return an empty array from get_approved_comments() when $post_id is empty.
This behavior was broken when moving the internals to `WP_Comment_Query` in
[30098]. As a result, `get_approved_comments( 0 )` was fetching *all* approved
comments, causing performance issues.

Props dd32.
Fixes #30412.

git-svn-id: https://develop.svn.wordpress.org/trunk@30402 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-20 01:51:38 +00:00
Drew Jaynes (DrewAPicture)
136b853399 Cross-reference WP_Comment_Query::query() as the location for finding information on default arguments for WP_Comment_Query.
Also updates the return types on `get_comments()` and `get_approved_comments()`, as an integer can also be returned if the `$count` argument is true.

Fixes #30111.


git-svn-id: https://develop.svn.wordpress.org/trunk@30281 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-08 20:35:00 +00:00
Drew Jaynes (DrewAPicture)
9df38af4f7 Document default arguments for WP_Comment_Query class as a hash notation.
Props boonebgorges, DrewAPicture.
See #30111.


git-svn-id: https://develop.svn.wordpress.org/trunk@30280 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-08 20:18:50 +00:00
Scott Taylor
3942ff4616 Correct all @return unknown instances.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30202 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-03 06:16:34 +00:00