From 5ed8e2304fb8086b5152c0daadfd5410febf8db1 Mon Sep 17 00:00:00 2001
From: Tim LSC <timotei.litespeed@gmail.com>
Date: Tue, 12 Nov 2024 15:33:14 +0200
Subject: [PATCH 1/2] Fix warning

---
 thirdparty/bbpress.cls.php | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/thirdparty/bbpress.cls.php b/thirdparty/bbpress.cls.php
index 84d6d21a5..b45251b62 100644
--- a/thirdparty/bbpress.cls.php
+++ b/thirdparty/bbpress.cls.php
@@ -78,10 +78,10 @@ public static function on_purge($post_id)
 		}
 
 		global $wp_widget_factory;
-		if (bbp_is_reply($post_id) && !is_null($wp_widget_factory->widgets['BBP_Replies_Widget'])) {
+		if (bbp_is_reply($post_id) && isset($wp_widget_factory->widgets['BBP_Replies_Widget']) && !is_null($wp_widget_factory->widgets['BBP_Replies_Widget'])) {
 			do_action('litespeed_purge_widget', $wp_widget_factory->widgets['BBP_Replies_Widget']->id);
 		}
-		if (bbp_is_topic($post_id) && !is_null($wp_widget_factory->widgets['BBP_Topics_Widget'])) {
+		if (bbp_is_topic($post_id) && isset($wp_widget_factory->widgets['BBP_Topics_Widget']) && !is_null($wp_widget_factory->widgets['BBP_Topics_Widget'])) {
 			do_action('litespeed_purge_widget', $wp_widget_factory->widgets['BBP_Topics_Widget']->id);
 		}
 	}

From b590296cf086e076039036770db7353ff55e01f9 Mon Sep 17 00:00:00 2001
From: Tim LSC <timotei.litespeed@gmail.com>
Date: Thu, 12 Dec 2024 22:58:33 +0200
Subject: [PATCH 2/2] Use classes

---
 thirdparty/bbpress.cls.php | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/thirdparty/bbpress.cls.php b/thirdparty/bbpress.cls.php
index b45251b62..e2eb3934a 100644
--- a/thirdparty/bbpress.cls.php
+++ b/thirdparty/bbpress.cls.php
@@ -78,11 +78,14 @@ public static function on_purge($post_id)
 		}
 
 		global $wp_widget_factory;
-		if (bbp_is_reply($post_id) && isset($wp_widget_factory->widgets['BBP_Replies_Widget']) && !is_null($wp_widget_factory->widgets['BBP_Replies_Widget'])) {
-			do_action('litespeed_purge_widget', $wp_widget_factory->widgets['BBP_Replies_Widget']->id);
+		$replies_widget = $wp_widget_factory->get_widget_object('BBP_Replies_Widget');
+		if (bbp_is_reply($post_id) && $replies_widget) {
+			do_action('litespeed_purge_widget', $replies_widget->id);
 		}
-		if (bbp_is_topic($post_id) && isset($wp_widget_factory->widgets['BBP_Topics_Widget']) && !is_null($wp_widget_factory->widgets['BBP_Topics_Widget'])) {
-			do_action('litespeed_purge_widget', $wp_widget_factory->widgets['BBP_Topics_Widget']->id);
+
+		$topic_widget = $wp_widget_factory->get_widget_object('BBP_Topics_Widget');
+		if (bbp_is_topic($post_id) && $topic_widget) {
+			do_action('litespeed_purge_widget', $topic_widget->id);
 		}
 	}
 }