[5506]
|
johnjamesjacoby
|
Preliminary function support for un/approving replies. Props netweb. See #2645.
|
[4664]
|
johnjamesjacoby
|
Preformatted blocks do not need top margin; it's trumped by the preceding paragraph tag.
|
[3145]
|
johnjamesjacoby
|
Prefix various files in bbp-includes folder with 'core' to identify them as required core files. Update bbpress.php to point to these new filenames.
|
[3123]
|
johnjamesjacoby
|
Prefix topic and reply author classes with #content for theme compatibility.
|
[2630]
|
johnjamesjacoby
|
Prefix core meta with underscore inside recount functions
|
[6819]
|
johnjamesjacoby
|
Prefer `sanitize_html_class()` over `esc_attr()`.
This change uses the correct formatting function in places where potentially untrusted class strings are ran through `array_map()`.
|
[5866]
|
johnjamesjacoby
|
Prefer `current_filter()` over `current_action()` to maintain compatibility with WordPress versions older than 3.9. Fixes #2529.
|
[4989]
|
johnjamesjacoby
|
Practice late escaping in bbp_get_dropdown() to make it more clear that attributes are escaped.
|
[7276]
|
johnjamesjacoby
|
Posts: strip "Protected/Private" for bbPress post types
This change prevents post title hints from being prepended to titles of Forums, Topics, or Replies, which was happening as a consequence of calling `get_the_title()` which assumes every protected/private post title needs it.
It does this by including the following code changes:
* introduce the `bbp_no_title_status_hints()` filter function, which hooks into 2 WordPress filters and maybe overrides the return value
* replace a few `get_the_title()` calls with `get_post_field( 'post_title' )` to bypass the above filters when they would never be desirable
Committer note: this could be considered a small back-compat break (because it alters long-standing theme-side output) but ultimately it is a design decision to output all of the forum content as it was saved by the community members. Forums that prefer the old behavior can unhook `bbp_no_title_status_hints` and continue to customize child template parts to insert custom forum status hints.
Fixes #3602.
|
[4509]
|
johnjamesjacoby
|
Posting:
* Fix bug causing forum/topic/reply content not to be retained when an error occurs.
* Fixes #2057.
|
[6850]
|
johnjamesjacoby
|
Post Types: replace literal post type strings with functional wrappers.
This fills in a few gaps where filtered post type names would not be used.
|
[4158]
|
johnjamesjacoby
|
Post Time:
* Use new post-time template-tags in appropriate bbp-twentyten templates.
|
[4157]
|
johnjamesjacoby
|
Post Time:
* Use new post-time template-tags in appropriate bbp-theme-compat templates.
|
[4156]
|
johnjamesjacoby
|
Post Time:
* Introduce template tags for topic and reply post time.
* Includes param for auto-humanizing.
* Fixes theme-compat issues with core date/time template-tags by always supplying a trusted post ID. If one is not available, something has gone horribly wrong now.
|
[7191]
|
johnjamesjacoby
|
Post Statuses: Audit forum/topic/reply, new/edit handlers.
This change normalizes the approaches between post types and actions, to ensure predictable behavior and avoid PHP notices from undefined status variables in certain situations.
It also adds a capability check to the `bbp_topic_status` condition, so that it is not engaged when the UI was not exposed in the posted form.
Props dd32.
In trunk for 2.7.0. See #3420.
|
[7192]
|
johnjamesjacoby
|
Post Statuses: Audit forum/topic/reply, new/edit handlers.
This change normalizes the approaches between post types and actions, to ensure predictable behavior and avoid PHP notices from undefined status variables in certain situations.
It also adds a capability check to the `bbp_topic_status` condition, so that it is not engaged when the UI was not exposed in the posted form.
Props dd32.
In branches/2.6 for 2.6.7. Fixes #3420.
|
[4265]
|
johnjamesjacoby
|
Post Ancestors:
* Cast return value of get_post_ancestors() as an array.
* Check if results of get_post_ancestors() are empty before attempting to iterate through them.
* Fixes issues with looping through orphaned forum content. A rare, but possible occurrence.
|
[3850]
|
johnjamesjacoby
|
Port r3737 and part r3750 into 2.0 branch.
* Cast parent as integer in bbp_get_forum_ancestors()
* Remove forum ID from hidden/private arrays when setting to public
|
[3847]
|
nacin
|
Port [3794], [3795] from trunk to branches/1.1.
|
[5610]
|
johnjamesjacoby
|
Port PHPUnit testing setup from BuddyPress. More to clean up here later.
Also adds 1 test to check for `bbpress()` function availability.
See #2542.
|
[5248]
|
johnjamesjacoby
|
Port Dashicons support from trunk to 2.5 branch, for 2.5.3. Includes updated color schemes.
|
[4969]
|
johnjamesjacoby
|
Pluralize user settings ID to match existing naming conventions.
|
[3833]
|
johnjamesjacoby
|
Pinking shears on bbpress.php.
|
[3800]
|
johnjamesjacoby
|
Pinking shears on bbp-extend-buddypress.php. See #1669.
|
[5434]
|
johnjamesjacoby
|
Phpdoc corrections to topic dropdown functions.
|
[5574]
|
netweb
|
Phorum importer: Include Subscribed Topics
Props netweb. See #2668
|
[6853]
|
johnjamesjacoby
|
Permalinks: merge root-slug usage into whichever is shown on root.
This change removes the double-archive juggle of having both forums and topics available as archives at the same time, which is traditionally not desirable.
|
[5954]
|
netweb
|
Performance: Replace direct SQL queries with `WP_Query()` objects in the following functions:
* `bbp_update_forum_topic_count()`
* `bbp_update_forum_topic_count_hidden()`
* `bbp_update_forum_reply_count()`
* `bbp_get_public_child_last_id()`
* `bbp_get_public_child_count()`
* `bbp_get_public_child_ids()`
Props johnjamesjacoby.
See #1799.
|
[6544]
|
johnjamesjacoby
|
Performance: Last pass at 2.6 performance tuning.
* Keep a local cache of non-options that aren't in the database, to avoid multiple database misses for options we know aren't in the database after `wp_load_alloptions()` is called
* Stop getting all favorite IDs and subscription IDs when checking if a user has favorited or subscribed to something, because these queries are expensive joins that are difficult to cache & invalidate
* Consolidate forum/topic favorites & subscriptions logic back into central routers, to make it easier to handle taxonomy term subscriptions in the future, and remove nested filter calls that make the call-stack confusing
* Informally deprecate some forum & topic specific fav/sub functions
* Rename one of the engagements remove functions to better match existing naming pattern
* Typo fixes & general code quality improvements
* Bump slow tests threshold up to `500` for now, and we can bring back down later (my 12" MacBook runs this pretty slowly, so I'd like to play with this more)
* Unit tests are all passing, and more quickly, maybe surprisingly
This should result in around 20 fewer database hits on non-persistent-cache sites, on average. When viewing single topics & replies, this will result in more than 25 fewer database hits.
|
[4061]
|
johnjamesjacoby
|
Performance:
* Filter 'posts_request' to allow use of FORCE INDEX when replies are queried that should include the topic post also.
* See: #1885, r4059.
|
[4059]
|
johnjamesjacoby
|
Performance:
* Add 'numeric' to applicable meta-queries to avoid casting as char.
* Remove meta-queries, and use post_parent where possible.
* Introduce _bbp_has_replies_where() filter, attached to 'posts_where' which is responsible for adding the lead topic to the results. This avoids having to use a costly meta-query, potentially resulting in full table scans.
* Audit meta-queries, and tweak where needed.
* Fixes #1885.
* Props vibol for investigation.
|
[3431]
|
johnjamesjacoby
|
Perform correct cap check in bbp_forum_enforce_private(). See #1576 and r3430.
|
[4262]
|
johnjamesjacoby
|
Paths:
* Remove "bbp-" prefixes on root level directories.
* Rename 'themes' to 'templates' to discourage clever people from putting "themes" in there.
* Update paths and URLs in bbpress.php.
|
[6558]
|
johnjamesjacoby
|
Passwords: Upgrade the user-edit experience to use the new'ish password generator.
* Introduces new `form-user-passwords.php` template part to encapsulate the more-elaborate password mark-up
* Removes `user.js` from the default scripts, and enqueues `user-profiles` instead
* Requires tweaks to the default template pack styling to accommodate the password generator being theme-side
This change will also allow bbPress to more easily keep-up with changes to the password generator code that comes with WordPress going forward. Huzzah!
|
[3113]
|
johnjamesjacoby
|
Pass topic-tag as array for compliance with shortcode attributes. Add topic-tag tax check to bbp_has_topics() before resetting post data.
|
[3011]
|
johnjamesjacoby
|
Pass the forums current visibility through to the functions responsible for changing them. This prevents querying post_meta and object cache for current visibility state, helpful for removing from private and hidden forum site meta.
|
[3781]
|
johnjamesjacoby
|
Pass param to bbp_get_template_locations() to allow locations to be filtered based on templates being queried. See #1766.
|
[4515]
|
johnjamesjacoby
|
Pass more variables into freshness link filters. Props jbobich. Fixes #1983.
|
[4789]
|
johnjamesjacoby
|
Pass complete content into activity stream items. Create excerpt on output rather than input. Fixes #2237.
|
[4915]
|
johnjamesjacoby
|
Pass an empty array into bbp_parse_args() in bbp_search_query().
|
[6552]
|
johnjamesjacoby
|
Pass `$type` into favs & subs link arguments. Missed in r6551.
|
[5486]
|
johnjamesjacoby
|
Pass `$topic_id` and `$forum_id` to relevant favorites and subscriptions filters. Hat tip DJPaul. Fixes #2651.
|
[5391]
|
johnjamesjacoby
|
Pass `$reply_id` into calls to `bbp_validate_reply_to()` and remove `reply_query` references in `BBP_Walker_Reply_Dropdown`. Fixes invalid `bbp_reply_id` value output in `form-reply.php`. See #2617.
|
[3548]
|
johnjamesjacoby
|
Pass $reply_id correctly into bbp_get_reply_id() in bbp_notify_subscribers()
|
[4775]
|
johnjamesjacoby
|
Pass $r instead of $args in ending filters. Ensures correct array of arguments is available to filters. These were skipped as part of #2056. Props alex-ye. Fixes #2218.
|
[6888]
|
johnjamesjacoby
|
Parser: revert error control operator change from r6887.
See also r6633 for original change.
|
[6212]
|
johnjamesjacoby
|
Parser: PHP 7.1 compatibility fixes to `parser.php`
Props xknown. Fixes #2973. See #2987.
|
[6418]
|
netweb
|
Parser: PHP 7.1 compatibility fixes to `parser.php`
Props xknown.
See #2973, #2987.
Merges [6212] to the 2.5 branch.
|
[6887]
|
johnjamesjacoby
|
Parser: Fix PHP 7.3 warning ("continue" in "switch" is equal to "break")
Fixes #3242.
|
[6398]
|
johnjamesjacoby
|
Parenthesis clean-up.
|
[6300]
|
johnjamesjacoby
|
Pagination: prefer `intval()` for numeric values, and always format numbers used for display.
|
[6680]
|
johnjamesjacoby
|
Pagination: abstract and normalize common functionality.
This change introduces a few new helper functions, and audits the links generated where loops of forums, topics, and replies are made visible. It addresses a number of edge-cases in the pagination code, including:
* `view=all` state not carrying over
* Total-page boundary maybe using the wrong value to calculate the total number of available pages
* Inconsistent output of values across post types and shortcodes
* Inability to filter pagination arguments in certain use cases
* Reduces code repetition and increases general happiness
Trunk, for 2.6.
|
[6228]
|
johnjamesjacoby
|
Pagination: Use `preg_replace` to find & remove `page=1` query arguments.
Fixes #2702. Props thebrandonallen, tharsheblows.
|
[4322]
|
johnjamesjacoby
|
Pagination:
* Fix bug where topics started, favorites, and subscriptions pagination would link to the root of a users profile.\
* Fixes incorrect filters on topics and replies URL's.
|
[5515]
|
netweb
|
PHPDdoc corrections for topic and reply pending status approve and unapprove functions. See #2645
|
[7254]
|
johnjamesjacoby
|
PHPCS: correct return var types in Revisions functions
This change fixes PHPCS/Intelephense warnings.
In branches/2.6, for 2.6.10.
|
[7046]
|
netweb
|
PHPCS: Use Parenthesis when instantiating a new object.
Props jrf.
See #3294.
For trunk.
|
[7047]
|
netweb
|
PHPCS: Use Parenthesis when instantiating a new object.
Props jrf.
See #3294.
For branches/2.6.
|
[7048]
|
netweb
|
PHPCS: Pinking shears.
Props jrf.
See #3294.
For trunk.
|
[7049]
|
netweb
|
PHPCS: Pinking shears.
Props jrf.
See #3294.
For branches/2.6.
|
[7253]
|
johnjamesjacoby
|
PHP8: define dependency injected components in BBP_Admin
This change prevents debug warnings in modern versions of PHP (8.0 and higher).
In branches/2.6, for 2.6.10.
|
[7287]
|
dd32
|
PHP8 compatibility: array_keys() only supports arrays, not null.
|
[3829]
|
johnjamesjacoby
|
PHP5'ize bbp-core-classes.php.
|
[7112]
|
xknown
|
PHP 7.4 compat: Replace the deprecated each call
|
[7113]
|
xknown
|
PHP 7.4 Compat: remove deprecated functions.
|
[7110]
|
xknown
|
PHP 7.4 Compat: Use square brackets and remove create_function calls.
|
[7116]
|
xknown
|
PHP 7.4 Compat: Replace the deprecated create_function calls with anonymous functions.
|
[7111]
|
xknown
|
PHP 7.4 Compat: Remove the create_function calls.
They are deprecated, and they seem to be removed in PHP 8.0.
|
[7114]
|
xknown
|
PHP 7.4 Compat: Remove deprecated functions.
|
[7115]
|
xknown
|
PHP 7.4 Compat: Don't use curly braces for array/string access
|
[5089]
|
johnjamesjacoby
|
PHP 5.4+ E_STRICT improvement to BuddyPress Groups display_forums() method. See #BP5108.
|
[5048]
|
johnjamesjacoby
|
PHP 5.4 compat and related sanity checks and clean-up. Props boonebgorges. Fixes #2731.
|
[6451]
|
johnjamesjacoby
|
Où mettre!
|
[3429]
|
johnjamesjacoby
|
Override canonical redirect when editing topics and replies. Fixes #1594.
|
[4872]
|
johnjamesjacoby
|
Overload the code tag in the fancy editor, and use backticks instead. Props mzaweb. (trunk)
|
[4871]
|
johnjamesjacoby
|
Overload the code tag in the fancy editor, and use backticks instead. Props mzaweb. (2.3 branch)
|
[2496]
|
johnjamesjacoby
|
Output value, not array
|
[6694]
|
johnjamesjacoby
|
Options: set default database version to `0`.
This change avoids race conditions with the updater when no version exists in the database. This would cause the database version to not be bumped, resulting in rewrite rules being needlessly flushed on each visit to `wp-admin`.
(Also tweak some nearby array values to make them easier to read.)
|
[6695]
|
johnjamesjacoby
|
Options: break `Features` out from `Settings` section.
This change makes it easier to discern which options are features, and which are settings for those features.
Also updates the inline descriptions for several array items.
|
[6762]
|
johnjamesjacoby
|
Options: allow default option cache strategy to be filtered, without causing an intercept.
This change brings filter behavior back that was unintentionally removed in r6751.
|
[6761]
|
johnjamesjacoby
|
Options: Use new `$intercept` value in place of old `$strategy` value.
This change fixes an undefined variable debug notice introduced in r6751.
|
[6078]
|
netweb
|
Options: Set the default value of `bbp_get_user_slug()` to `users`
This changeset updates the default single user slug from `user` to `users`. The `bbp_get_default_options()` function defines the default as `users` and this is used when installing and activating bbPress. This fixes a scenario where bbPress options have not been saved which would cause the single user slug to use the unexpected slug `user` rather than `users`.
Props ocean90.
Fixes #2983
|
[6072]
|
netweb
|
Options: Fix `bbp_show_on_root()` copy pasta PHPDoc description
|
[4208]
|
johnjamesjacoby
|
Options:
* Wrap some options loops in array_keys() to prevent making unnecessary $value variables.
|
[4193]
|
johnjamesjacoby
|
Options:
* Visually section off user slugs in bp_get_options().
|
[3949]
|
johnjamesjacoby
|
Options:
* Pinking shears on bbp_get_default_options().
* Remove db_version duplicate description.
|
[3476]
|
johnjamesjacoby
|
Only use at_name filters when BuddyPress activity component is active.
|
[2616]
|
johnjamesjacoby
|
Only show topic admin links if user has caps
|
[6095]
|
johnjamesjacoby
|
Only show reply-to drop-down when editing an existing reply.
|
[4960]
|
johnjamesjacoby
|
Only show allowed tags when not using the fancy editor or user does not have unfiltered_html cap. Also remove function_exists() check for wp_editor().
|
[4681]
|
johnjamesjacoby
|
Only show BuddyPress Group settings section when viewing bbPress settings for a BuddyPress root blog. Note that using bp_is_root_blog() includes support for BuddyPress's Multiblog mode.
|
[4880]
|
johnjamesjacoby
|
Only remove filters if bbp_use_wp_editor() is true. See #2317. (trunk)
|
[4879]
|
johnjamesjacoby
|
Only remove filters if bbp_use_wp_editor() is true. See #2317. (2.3 branch)
|
[3381]
|
johnjamesjacoby
|
Only overload global access caps if user does not have existing caps.
|
[5132]
|
johnjamesjacoby
|
Only filter the `bbpress` textdomain with the `bbpress_locale` filter.
Clean up surrounding phpdoc.
|
[3930]
|
johnjamesjacoby
|
Only filter shortcode queries if query is not already set. Also, use correct filter names.
|
[3806]
|
johnjamesjacoby
|
Only exclude private/hidden forum content in feeds when not viewing a single forum. Fixes #1782.
|
[3849]
|
johnjamesjacoby
|
Only enqueue parent theme CSS if parent theme is twentyten.
|
[3597]
|
johnjamesjacoby
|
Only bail if forums are installed correctly.
|
[3879]
|
johnjamesjacoby
|
Only apply borders to top of elements in theme compat, for consistency sake.
|