From 6a627f09d33967ca7fa5b6d939a9347d8223a1e6 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Tue, 30 Sep 2025 20:27:12 +0000
Subject: [PATCH] referral update

---
 JVBase.php                         |    6 ++++++
 inc/rest/routes/ReferralRoutes.php |   18 ++++++++----------
 2 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/JVBase.php b/JVBase.php
index f88c372..9f4519c 100644
--- a/JVBase.php
+++ b/JVBase.php
@@ -24,6 +24,7 @@
 use JVBase\rest\routes\ErrorRoutes;
 use JVBase\rest\routes\FormRoutes;
 use JVBase\rest\routes\NewsRoutes;
+use JVBase\rest\routes\ReferralRoutes;
 use JVBase\rest\routes\ResponseRoutes;
 use JVBase\rest\routes\OptionsRoutes;
 use JVBase\rest\routes\VoteRoutes;
@@ -256,4 +257,9 @@
 		$this->routes[$slug] = $class;
 	}
 
+	public function referrals():ReferralManager
+	{
+		return $this->managers['referral'];
+	}
+
 }
diff --git a/inc/rest/routes/ReferralRoutes.php b/inc/rest/routes/ReferralRoutes.php
index a447a16..d7f097f 100644
--- a/inc/rest/routes/ReferralRoutes.php
+++ b/inc/rest/routes/ReferralRoutes.php
@@ -1,10 +1,10 @@
 <?php
-namespace JVBase\rest;
+namespace JVBase\rest\routes;
 
+use JVBase\rest\RestRouteManager;
 use WP_REST_Request;
 use WP_REST_Response;
 use WP_Error;
-use JVBase\managers\ReferralManager;
 
 if (!defined('ABSPATH')) {
 	exit;
@@ -15,12 +15,10 @@
  */
 class ReferralRoutes extends RestRouteManager
 {
-	protected ReferralManager $manager;
 
 	public function __construct()
 	{
 		$this->route = 'referrals';
-		$this->manager = new ReferralManager();
 		parent::__construct();
 	}
 
@@ -149,7 +147,7 @@
 			'offset' => $request->get_param('offset') ?? 0
 		];
 
-		$referrals = $this->manager->getUserReferrals($user_id, $args);
+		$referrals = JVB()->referrals()->getUserReferrals($user_id, $args);
 
 		return new WP_REST_Response([
 			'success' => true,
@@ -163,7 +161,7 @@
 	public function getReferralCode(WP_REST_Request $request): WP_REST_Response
 	{
 		$user_id = get_current_user_id();
-		$code = $this->manager->getUserReferralCode($user_id);
+		$code = JVB()->referrals()->getUserReferralCode($user_id);
 
 		if (is_wp_error($code)) {
 			return new WP_REST_Response([
@@ -187,7 +185,7 @@
 		$user_id = get_current_user_id();
 		$new_code = strtoupper(sanitize_text_field($request->get_param('code')));
 
-		$result = $this->manager->getUserReferralCode($user_id, $new_code);
+		$result = JVB()->referrals()->getUserReferralCode($user_id, $new_code);
 
 		if (is_wp_error($result)) {
 			return new WP_REST_Response([
@@ -232,7 +230,7 @@
 	{
 		$referral_id = intval($request->get_param('id'));
 
-		$result = $this->manager->markAsTreated($referral_id, true);
+		$result = JVB()->referrals()->markAsTreated($referral_id, true);
 
 		if (!$result) {
 			return new WP_REST_Response([
@@ -253,7 +251,7 @@
 	public function getUserStats(WP_REST_Request $request): WP_REST_Response
 	{
 		$user_id = get_current_user_id();
-		$stats = $this->manager->getUserStats($user_id);
+		$stats = JVB()->referrals()->getUserStats($user_id);
 
 		return new WP_REST_Response([
 			'success' => true,
@@ -269,7 +267,7 @@
 		$period = $request->get_param('period') ?? 'week';
 		$limit = $request->get_param('limit') ?? 10;
 
-		$top_referrers = $this->manager->getTopReferrers($limit, $period);
+		$top_referrers = JVB()->referrals()->getTopReferrers($limit, $period);
 
 		return new WP_REST_Response([
 			'success' => true,

--
Gitblit v1.10.0