From a9654f00c8fbc9934289d761843ddd071025013f Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Fri, 28 Aug 2026 17:20:28 +0000
Subject: [PATCH] =PHPStorm Code Inspection: fixed class reference errors (from getting rid of JVB() and replacing with direct class::getInstance; as well as general code sniffing, etc

---
 inc/rest/routes/Invitations.php |   51 +++++++++++++++++++++++++++------------------------
 1 files changed, 27 insertions(+), 24 deletions(-)

diff --git a/inc/rest/routes/Invitations.php b/inc/rest/routes/Invitations.php
index 7cccb3e..558f118 100644
--- a/inc/rest/routes/Invitations.php
+++ b/inc/rest/routes/Invitations.php
@@ -1,6 +1,11 @@
 <?php
 namespace JVBase\rest\routes;
 
+use JVBase\Instance;
+use JVBase\managers\Cache;
+use JVBase\managers\InvitationsManager;
+use JVBase\managers\queue\Queue;
+use JVBase\managers\Roles;
 use JVBase\rest\Rest;
 use JVBase\managers\CustomTable;
 use JVBase\rest\Route;
@@ -20,22 +25,21 @@
  */
 class Invitations extends Rest
 {
+	use Instance;
 	protected array $inviteConfig;
 	protected CustomTable $table;
-
+	protected Cache $termCache;
 	public function __construct()
 	{
 		$this->cacheName = 'invitations';
 		parent::__construct();
+		$this->cache = Cache::for('invitations_posts','post');
+		$this->termCache = Cache::for('invitation_terms', 'term');
 
 		// Get invitation configuration
-		$this->inviteConfig = JVB()->invitations()->getInviteConfig();
+		$this->inviteConfig = InvitationsManager::getInstance()->getInviteConfig();
 		$this->table = CustomTable::for('invitations');
 
-		// Cache connections
-		$this->cache
-			->connect('user')
-			->connect('taxonomy');
 	}
 
 	public function registerRoutes(): void
@@ -43,7 +47,6 @@
 		Route::for('invitations')
 			->get([$this, 'getInvitations'])
 			->args([
-				'user' => 'int|required',
 				'to_term' => 'int',
 				'taxonomy' => 'string',
 				'status' => 'string|enum:all,pending,accepted,rejected,expired,revoked|default:all',
@@ -54,13 +57,13 @@
 
 			->post([$this, 'createInvitationRequest'])
 			->args([
-				'user' => 'int|required',
 				'action' => 'string|enum:create,revoke,refresh|default:create',
 				'invites' => 'array',
 				'invitation_id' => 'int'
 			])
 			->auth('verified')
-			->rateLimit(10, 300);
+			->rateLimit(10, 300)
+			->register();
 	}
 
 	/**
@@ -68,17 +71,17 @@
 	 */
 	public function getInvitations(WP_REST_Request $request): WP_REST_Response
 	{
-		$userID = $request->get_param('user');
+		$userID = get_current_user_id();
 		$termID = $request->get_param('to_term');
 		$taxonomy = $request->get_param('taxonomy');
 
 		// Validate user
-		if (get_current_user_id() !== $userID) {
+		if (!$userID) {
 			return $this->unauthorized('Invalid user');
 		}
 
 		$args = [
-			'user' => $userID,
+			'id' => $userID,
 			'to_term' => $termID,
 			'taxonomy' => $taxonomy ? jvbNoBase($taxonomy) : null,
 			'status' => $request->get_param('status'),
@@ -86,8 +89,8 @@
 		];
 
 		// Check cache
-		$key = $this->cache->generateKey($args);
-		if ($cached = $this->cache->get($key)) {
+
+		if ($cached = $this->cache->get($args)) {
 			return $this->success($cached);
 		}
 
@@ -97,7 +100,7 @@
 			: $this->getUserInvitations($args);
 
 		// Cache result
-		$this->cache->set($key, $result);
+		$this->cache->set($args, $result);
 
 		return $this->success($result);
 	}
@@ -105,10 +108,10 @@
 	/**
 	 * Get invitations for a specific term
 	 */
-	protected function getTermInvitations(array $args): array
+	public function getTermInvitations(array $args): array
 	{
 		// Check permission
-		if (!JVB()->roles()->isManager($args['user'], $args['to_term'])) {
+		if (!Roles::getInstance()()->isManager($args['user'], $args['to_term'])) {
 			return $this->forbidden('You cannot view invitations for this ' . $args['taxonomy'])->get_data();
 		}
 
@@ -184,11 +187,11 @@
 	 */
 	public function createInvitationRequest(WP_REST_Request $request): WP_REST_Response
 	{
-		$userID = $request->get_param('user');
+		$userID = get_current_user_id();
 		$action = $request->get_param('action');
 
 		// Validate user
-		if (get_current_user_id() !== $userID) {
+		if (!$userID) {
 			return $this->unauthorized('Invalid user');
 		}
 
@@ -214,7 +217,7 @@
 		}
 
 		// Queue using fluent interface
-		$op = JVB()->queue()->add(
+		$op = Queue::getInstance()->add(
 			'invitation_create',
 			$userID,
 			['invitations' => $validated],
@@ -232,7 +235,7 @@
 	 */
 	protected function validateInvitations(int $userID, array $invites): array
 	{
-		return JVB()->invitations()->validateInvitations($userID, $invites);
+		return InvitationsManager::getInstance()->validateInvitations($userID, $invites);
 	}
 
 
@@ -249,7 +252,7 @@
 			return $this->error('Invitation ID required');
 		}
 
-		$op = JVB()->queue()->add(
+		$op = Queue::getInstance()->add(
 			'invitation_revoke',
 			$userID,
 			['invitation_id' => $invitationID],
@@ -270,7 +273,7 @@
 			return $this->error('Invitation ID required');
 		}
 
-		$op = JVB()->queue()->add(
+		$op = Queue::getInstance()->add(
 			'invitation_resend',
 			$userID,
 			['invitation_id' => $invitationID],
@@ -309,7 +312,7 @@
 		];
 
 		// Add term information if present
-		foreach (JVB()->roles()->getInvitableTaxonomies() as $taxonomy) {
+		foreach (Roles::getInstance()()->getInvitableTaxonomies() as $taxonomy) {
 			$column = 'to_' . $taxonomy;
 			if (isset($invitation->$column) && $invitation->$column) {
 				$termID = (int) $invitation->$column;

--
Gitblit v1.10.0