From 48721c85ebcfa973ee81719d2467ca80e4253dc9 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Fri, 01 May 2026 17:30:03 +0000
Subject: [PATCH] =Edmonton Ink hard test begins! Real testing of the managers and reset routes will commence. So far, just ensuring our classes are all loaded correctly: Site() and its sub-classes Membership, Login, etc. Care should be taken to load conditionally on 'init', as we finish defining most settings by 'plugins_loaded' at priority 5

---
 inc/managers/_setup.php |   29 +++++++++++++++++++++++------
 1 files changed, 23 insertions(+), 6 deletions(-)

diff --git a/inc/managers/_setup.php b/inc/managers/_setup.php
index d6fb3da..96ff954 100644
--- a/inc/managers/_setup.php
+++ b/inc/managers/_setup.php
@@ -1,5 +1,6 @@
 <?php
 
+use JVBase\managers\ApprovalManager;
 use JVBase\managers\Cache;
 use JVBase\managers\IconsManager;
 use JVBase\registrar\Registrar;
@@ -48,16 +49,20 @@
 		require(JVB_DIR . '/inc/managers/UserTermsManager.php');
 	}
 
-	if (Site::has('notifications')) {
-		require(JVB_DIR . '/inc/managers/Notifications/Content.php');
-		require(JVB_DIR . '/inc/managers/Notifications/EmailDigests.php');
-		require(JVB_DIR . '/inc/managers/Notifications/Notifications.php');
-		require(JVB_DIR . '/inc/managers/Notifications/Preferences.php');
-		require(JVB_DIR . '/inc/managers/NotificationManager.php');
+	if (!empty(Registrar::getFeatured('approve_new'))) {
+		require(JVB_DIR . '/inc/managers/ApprovalManager.php');
 	}
 
+
 	$membership = Site::membership();
 	if ($membership) {
+		if ($membership->has('notifications')) {
+			require(JVB_DIR . '/inc/managers/Notifications/Content.php');
+			require(JVB_DIR . '/inc/managers/Notifications/EmailDigests.php');
+			require(JVB_DIR . '/inc/managers/Notifications/Notifications.php');
+			require(JVB_DIR . '/inc/managers/Notifications/Preferences.php');
+			require(JVB_DIR . '/inc/managers/NotificationManager.php');
+		}
 		if ($membership->has('forum') && !empty(Registrar::getFeatured('is_content', 'term'))) {
 			require(JVB_DIR . '/inc/managers/NewsRelationships.php');
 		}
@@ -77,6 +82,18 @@
 	if (Site::has('referrals')) {
 		require(JVB_DIR . '/inc/managers/ReferralManager.php');
 	}
+
+	if (!empty(Registrar::getFeatured('karma'))) {
+		require(JVB_DIR . '/inc/managers/KarmaManager.php');
+	}
+	if (Site::has('favourites')) {
+		require(JVB_DIR . '/inc/managers/FavouritesManager.php');
+	}
+}
+
+add_action('init', 'jvb_load_karma', 1);
+function jvb_load_karma():void
+{
 }
 require(JVB_DIR . '/inc/managers/ErrorHandler.php');
 require(JVB_DIR . '/inc/managers/queue/_setup.php');

--
Gitblit v1.10.0