From bc5c8f4db8488b11f59676ffec0bba982f52e4f5 Mon Sep 17 00:00:00 2001
From: balexey88
Date: Tue, 22 Oct 2024 14:58:38 +0300
Subject: [PATCH] Fix email setting description; add BuddyPress Addon
---
changelog.txt | 1 +
changes.md | 1 +
lib/classes/class-module.php | 5 -
lib/classes/compatibility/buddypress.php | 237 ---------------------
readme.md | 1 +
readme.txt | 2 +
static/data/addons.php | 10 +
static/views/settings-sections/general.php | 12 +-
vendor/composer/autoload_classmap.php | 1 -
vendor/composer/autoload_static.php | 1 -
vendor/composer/installed.php | 4 +-
11 files changed, 23 insertions(+), 252 deletions(-)
delete mode 100644 lib/classes/compatibility/buddypress.php
diff --git a/changelog.txt b/changelog.txt
index 287f08727..1072bfad5 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -6,6 +6,7 @@
* COMPATIBILITY - WPForms Compatibility replaced with [WP-Stateless - WPForms Addon](https://wordpress.org/plugins/wp-stateless-wpforms-addon/).
* COMPATIBILITY - Easy Digital Downloads Compatibility replaced with [WP-Stateless - Easy Digital Downloads Addon](* COMPATIBILITY - Easy Digital Downloads Compatibility replaced with [WP-Stateless - Easy Digital Downloads Addon](https://wordpress.org/plugins/wp-stateless-easy-digital-downloads-addon/).
* COMPATIBILITY - LiteSpeed Cache Compatibility replaced with [WP-Stateless - LiteSpeed Cache Addon](https://wordpress.org/plugins/wp-stateless-litespeed-cache-addon/).
+* COMPATIBILITY - BuddyPress Compatibility replaced with [WP-Stateless - BuddyPress Addon](https://wordpress.org/support/plugin/wp-stateless-buddypress-addon/).
* FIX: remove PHP warning on `Status` settings tab.
* FIX: database updates to resolve conflicts with Polylang Pro compatibility.
diff --git a/changes.md b/changes.md
index 392d1adc6..18b0e455d 100644
--- a/changes.md
+++ b/changes.md
@@ -5,6 +5,7 @@
* COMPATIBILITY - WPForms Compatibility replaced with [WP-Stateless - WPForms Addon](https://wordpress.org/plugins/wp-stateless-wpforms-addon/).
* COMPATIBILITY - Easy Digital Downloads Compatibility replaced with [WP-Stateless - Easy Digital Downloads Addon](https://wordpress.org/plugins/wp-stateless-easy-digital-downloads-addon/).
* COMPATIBILITY - LiteSpeed Cache Compatibility replaced with [WP-Stateless - LiteSpeed Cache Addon](https://wordpress.org/plugins/wp-stateless-litespeed-cache-addon/).
+* COMPATIBILITY - BuddyPress Compatibility replaced with [WP-Stateless - BuddyPress Addon](https://wordpress.org/support/plugin/wp-stateless-buddypress-addon/).
* FIX: PHP warning on `Status` settings tab.
* FIX: database updates to resolve conflicts with Polylang Pro compatibility.
diff --git a/lib/classes/class-module.php b/lib/classes/class-module.php
index 72e4876df..8f5cb9a1c 100644
--- a/lib/classes/class-module.php
+++ b/lib/classes/class-module.php
@@ -25,11 +25,6 @@ public function __construct() {
add_filter('wp_stateless_compatibility_tab_visible', array($this, 'compatibility_tab_visible'), 10, 1);
add_action('wp_stateless_compatibility_tab_content', array($this, 'tab_content'));
- /**
- * Support for BuddyPress
- */
- new BuddyPress();
-
/**
* Support for Ewww Image Optimizer
*/
diff --git a/lib/classes/compatibility/buddypress.php b/lib/classes/compatibility/buddypress.php
deleted file mode 100644
index 9ef17ab4d..000000000
--- a/lib/classes/compatibility/buddypress.php
+++ /dev/null
@@ -1,237 +0,0 @@
- $r['object'],
- 'item_id' => $r['item_id'],
- 'html' => false,
- 'type' => 'full',
- ));
- $thumb_avatar = bp_core_fetch_avatar(array(
- 'object' => $r['object'],
- 'item_id' => $r['item_id'],
- 'html' => false,
- 'type' => 'thumb',
- ));
-
- foreach ( [$full_avatar, $thumb_avatar] as $url ) {
- $name = apply_filters('wp_stateless_file_name', $url, 0);
- $absolutePath = apply_filters('wp_stateless_addon_files_root', '');
- $absolutePath .= '/' . $name;
-
- do_action( 'sm:sync::syncFile', $name, $absolutePath );
- }
- }
-
- /**
- * Deleting avatar from GCS.
- * @param $return
- * @param $args
- * @return bool
- */
- public function delete_existing_avatar($return, $args) {
- if (empty($args['object']) && empty($args['item_id'])) {
- return $return;
- }
-
- $full_avatar = bp_core_fetch_avatar(array('object' => $args['object'], 'item_id' => $args['item_id'], 'html' => false, 'type' => 'full',));
- $thumb_avatar = bp_core_fetch_avatar(array('object' => $args['object'], 'item_id' => $args['item_id'], 'html' => false, 'type' => 'thumb',));
-
- do_action('sm:sync::deleteFile', apply_filters('wp_stateless_file_name', $full_avatar, 0));
- do_action('sm:sync::deleteFile', apply_filters('wp_stateless_file_name', $thumb_avatar, 0));
-
- if ( ud_get_stateless_media()->is_mode( ['ephemeral', 'stateless'] ) ) {
- $return = false;
- }
-
- return $return;
- }
-
- /**
- * Sync and return GCS url for group images.
- *
- * Used as CSS background-image.
- *
- * @param [type] $return
- * @param [type] $r
- * @return void
- */
- public function bp_attachments_pre_get_attachment($return, $r) {
- // Return if this is a recursive call.
- if (!empty($r['recursive'])) {
- return $return;
- }
-
- try {
- $debug_backtrace = \debug_backtrace(false);
-
- // Making sure we only return GCS link if the type is url.
- if (!empty($debug_backtrace[3]['args'][0]) && $debug_backtrace[3]['args'][0] == 'url') {
- $r['recursive'] = true;
-
- $url = bp_attachments_get_attachment('url', $r);
- $name = apply_filters('wp_stateless_file_name', $url, 0);
-
- $root_dir = ud_get_stateless_media()->get('sm.root_dir');
- $root_dir = apply_filters("wp_stateless_handle_root_dir", $root_dir);
- $root_dir = trim($root_dir, '/ '); // Remove any forward slash and empty space.
-
- if (!empty($name) && $root_dir . "/" != $name) {
- $full_path = bp_attachments_get_attachment(false, $r);
- do_action('sm:sync::syncFile', $name, $full_path, false, array('ephemeral' => false));
- $return = ud_get_stateless_media()->get_gs_host() . '/' . $name;
- }
- }
- } catch (\Throwable $th) {
- //throw $th;
- }
- return $return;
- }
-
- /**
- * Skip cache busting while Buddypress processes images.
- *
- * @param $return
- * @param $filename
- * @return mixed
- */
- public function skip_cache_busting($return, $filename) {
- $back_trace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);
-
- foreach ($back_trace as $trace) {
- if ( isset($trace['file']) && strpos($trace['file'], 'buddypress') !== false ) {
- if ( isset($trace['function']) && $trace['function'] === 'sanitize_file_name' ) {
- return $filename;
- }
- }
- }
-
- return $return;
- }
-
- /**
- * Update args when uploading/syncing file to GCS.
- *
- * @param array $args
- * @param string $name
- * @param string $file
- * @param bool $force
- *
- * @return array
- */
- public function sync_args($args, $name, $file, $force) {
- if ( !$this->is_avatar_dir($name) ) {
- return $args;
- }
-
- if ( ud_get_stateless_media()->is_mode('stateless') ) {
- $args['name_with_root'] = false;
- }
-
- $args['source'] = 'BuddyPress';
- $args['source_version'] = '';
-
- try {
- $args['source_version'] = bp_get_version();
- } catch (\Throwable $th) {
- }
-
- return $args;
- }
-
- /**
- * Override BP avatar folder URL.
- */
- public function bp_core_avatar_folder_url($folder_url, $item_id, $object, $avatar_dir) {
- if ( ud_get_stateless_media()->is_mode( ['disabled', 'backup'] ) ) {
- return $folder_url;
- }
-
- $position = strpos($folder_url, $avatar_dir);
-
- if ( $position === false ) {
- return $folder_url;
- }
-
- $url = substr($folder_url, $position);
- $url = apply_filters('wp_stateless_addon_files_url', '', $url);
-
- return $url;
- }
-
- /**
- * Override BP avatar folder.
- */
- public function bp_core_avatar_folder_dir($folder_dir, $item_id, $object, $avatar_dir) {
- if ( !ud_get_stateless_media()->is_mode('stateless') ) {
- return $folder_dir;
- }
-
- $position = strpos($folder_dir, $avatar_dir);
-
- if ( $position === false ) {
- return $folder_dir;
- }
-
- $dir = substr($folder_dir, $position);
- $dir = apply_filters('wp_stateless_addon_files_url', '', $dir);
-
- return $dir;
- }
- }
- }
-}
diff --git a/readme.md b/readme.md
index bf52108a9..3cd36c747 100644
--- a/readme.md
+++ b/readme.md
@@ -44,6 +44,7 @@ New to Google Cloud? Google is offering you a [$300 credit](https://console.clou
* [Divi Theme Addon](https://wordpress.org/plugins/wp-stateless-divi-theme-addon/)
* [SiteOrigin CSS Addon](https://wordpress.org/plugins/wp-stateless-siteorigin-css-addon/)
* [SiteOrigin Widgets Bundle Addon](https://wordpress.org/plugins/wp-stateless-siteorigin-widgets-bundle-addon/)
+* [BuddyPress Addon](https://wordpress.org/support/plugin/wp-stateless-buddypress-addon/)
* [BuddyBoss Platform Addon](https://wordpress.org/plugins/wp-stateless-buddyboss-platform-addon/)
### Support, Feedback, & Contribute
diff --git a/readme.txt b/readme.txt
index 22f4f1cd3..d334bf5aa 100644
--- a/readme.txt
+++ b/readme.txt
@@ -54,6 +54,7 @@ New to Google Cloud? Google is offering you a [$300 credit](https://console.clou
* [Divi Theme Addon](https://wordpress.org/plugins/wp-stateless-divi-theme-addon/)
* [SiteOrigin CSS Addon](https://wordpress.org/plugins/wp-stateless-siteorigin-css-addon/)
* [SiteOrigin Widgets Bundle Addon](https://wordpress.org/plugins/wp-stateless-siteorigin-widgets-bundle-addon/)
+* [BuddyPress Addon](https://wordpress.org/support/plugin/wp-stateless-buddypress-addon/)
* [BuddyBoss Platform Addon](https://wordpress.org/plugins/wp-stateless-buddyboss-platform-addon/)
= Support, Feedback, & Contribute =
@@ -140,6 +141,7 @@ Before upgrading to WP-Stateless 3.0, please, make sure you tested it on your de
* COMPATIBILITY - WPForms Compatibility replaced with [WP-Stateless - WPForms Addon](https://wordpress.org/plugins/wp-stateless-wpforms-addon/).
* COMPATIBILITY - Easy Digital Downloads Compatibility replaced with [WP-Stateless - Easy Digital Downloads Addon](* COMPATIBILITY - Easy Digital Downloads Compatibility replaced with [WP-Stateless - Easy Digital Downloads Addon](https://wordpress.org/plugins/wp-stateless-easy-digital-downloads-addon/).
* COMPATIBILITY - LiteSpeed Cache Compatibility replaced with [WP-Stateless - LiteSpeed Cache Addon](https://wordpress.org/plugins/wp-stateless-litespeed-cache-addon/).
+* COMPATIBILITY - BuddyPress Compatibility replaced with [WP-Stateless - BuddyPress Addon](https://wordpress.org/support/plugin/wp-stateless-buddypress-addon/).
* FIX: remove PHP warning on `Status` settings tab.
* FIX: database updates to resolve conflicts with Polylang Pro compatibility.
diff --git a/static/data/addons.php b/static/data/addons.php
index b901e60a3..50864e346 100644
--- a/static/data/addons.php
+++ b/static/data/addons.php
@@ -137,4 +137,14 @@
'hubspot_id' => '151480507763',
],
+ 'buddypress' => [
+ 'title' => 'BuddyPress',
+ 'plugin_files' => ['buddypress/bp-loader.php'],
+ 'addon_file' => 'wp-stateless-buddypress-addon/wp-stateless-buddypress-addon.php',
+ 'icon' => 'https://ps.w.org/buddypress/assets/icon.svg',
+ 'repo' => 'udx/wp-stateless-buddypress-addon',
+ 'wp' => 'https://wordpress.org/support/plugin/wp-stateless-buddypress-addon/',
+ 'hubspot_id' => '151478250924',
+ ],
+
];
diff --git a/static/views/settings-sections/general.php b/static/views/settings-sections/general.php
index aad4a9861..f3a621f55 100644
--- a/static/views/settings-sections/general.php
+++ b/static/views/settings-sections/general.php
@@ -134,19 +134,19 @@
- domain); ?>
+ domain); ?>
-
+
-
+
domain); ?>
-
-
-
+
+
diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php
index d70640e89..36a229ea4 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -39,7 +39,6 @@
'wpCloud\\StatelessMedia\\Batch\\IBatchTask' => $baseDir . '/lib/classes/batch/interface-batch.php',
'wpCloud\\StatelessMedia\\Batch\\Migration' => $baseDir . '/lib/classes/batch/class-migration.php',
'wpCloud\\StatelessMedia\\Bootstrap' => $baseDir . '/lib/classes/class-bootstrap.php',
- 'wpCloud\\StatelessMedia\\BuddyPress' => $baseDir . '/lib/classes/compatibility/buddypress.php',
'wpCloud\\StatelessMedia\\Compatibility' => $baseDir . '/lib/classes/class-compatibility.php',
'wpCloud\\StatelessMedia\\CompatibilityWooExtraProductOptions' => $baseDir . '/lib/classes/compatibility/woo-extra-product-options.php',
'wpCloud\\StatelessMedia\\DB' => $baseDir . '/lib/classes/class-db.php',
diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php
index 97b41cb71..24d5e4744 100644
--- a/vendor/composer/autoload_static.php
+++ b/vendor/composer/autoload_static.php
@@ -80,7 +80,6 @@ class ComposerStaticInitc59d002476a452800baaf79c430753cb
'wpCloud\\StatelessMedia\\Batch\\IBatchTask' => __DIR__ . '/../..' . '/lib/classes/batch/interface-batch.php',
'wpCloud\\StatelessMedia\\Batch\\Migration' => __DIR__ . '/../..' . '/lib/classes/batch/class-migration.php',
'wpCloud\\StatelessMedia\\Bootstrap' => __DIR__ . '/../..' . '/lib/classes/class-bootstrap.php',
- 'wpCloud\\StatelessMedia\\BuddyPress' => __DIR__ . '/../..' . '/lib/classes/compatibility/buddypress.php',
'wpCloud\\StatelessMedia\\Compatibility' => __DIR__ . '/../..' . '/lib/classes/class-compatibility.php',
'wpCloud\\StatelessMedia\\CompatibilityWooExtraProductOptions' => __DIR__ . '/../..' . '/lib/classes/compatibility/woo-extra-product-options.php',
'wpCloud\\StatelessMedia\\DB' => __DIR__ . '/../..' . '/lib/classes/class-db.php',
diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php
index 77374ccd3..3d68e4eeb 100644
--- a/vendor/composer/installed.php
+++ b/vendor/composer/installed.php
@@ -3,7 +3,7 @@
'name' => 'wpcloud/wp-stateless',
'pretty_version' => 'dev-latest',
'version' => 'dev-latest',
- 'reference' => '2f6205a2ad67d6a8ca0f130699cf1627d520e658',
+ 'reference' => '569840f24fbf6a2bd955d80a2786f7f30b45ad00',
'type' => 'wordpress-plugin',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
@@ -58,7 +58,7 @@
'wpcloud/wp-stateless' => array(
'pretty_version' => 'dev-latest',
'version' => 'dev-latest',
- 'reference' => '2f6205a2ad67d6a8ca0f130699cf1627d520e658',
+ 'reference' => '569840f24fbf6a2bd955d80a2786f7f30b45ad00',
'type' => 'wordpress-plugin',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),