From 3baf3d2545ba6ece6b74a64c0def59bd0774cf54 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Wed, 10 Jun 2026 16:34:12 +0000
Subject: [PATCH] =Laid the groundwork for an improved DashboardManager.php setup. Have to put it aside so I can get the dang Northeh done though.

---
 inc/registrar/config/Integration.php |   23 ++++++++++++++++-------
 1 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/inc/registrar/config/Integration.php b/inc/registrar/config/Integration.php
index 8723e71..3b9a6a3 100644
--- a/inc/registrar/config/Integration.php
+++ b/inc/registrar/config/Integration.php
@@ -2,7 +2,7 @@
 namespace JVBase\registrar\config;
 
 use JVBase\registrar\Registrar;
-use JVBase\utility\Features;
+use JVBase\base\Site;
 
 if (!defined('ABSPATH')) {
 	exit;
@@ -13,7 +13,7 @@
 	 * @var string Must match as defined in the JVBase\integrations namespace
 	 */
 	protected string $service_name;
-	protected string $content_type;
+	protected ?string $content_type = null;
 	/**
 	 * @var bool Whether to send to the integration on publish
 	 */
@@ -31,25 +31,34 @@
 
 
 	public function __construct(string $service) {
-		if (!Features::hasIntegration($service)) {
+		if (!Site::hasIntegration($service)) {
 			error_log('Could not link with integration, as it is not enabled: '.$service);
 			return;
 		}
 		$this->service_name = $service;
 	}
 
+
 	public function getService_name():string
 	{
 		return $this->service_name;
 	}
 
 	/**
-	 * @param string $content must match what integration expects
+	 * @param ?string $content must match what integration expects
 	 * @return self
 	 */
-	public function setContent_type(string $content):self
+	public function setContentType(?string $content):self
 	{
-		$allowed = JVB()->connect($this->service_name)->allowedContent();
+		if (is_null($content)) {
+			return $this;
+		}
+		$connection = JVB()->connect($this->service_name);
+		if (!$connection){
+			error_log('[Integration]::setContentType Service is not setup. '.$this->service_name);
+			return $this;
+		}
+		$allowed = $connection->getAllowedContent();
 		if (!in_array($content, $allowed)) {
 			error_log($this->service_name.' Connection does not support this content: '.$content);
 			return $this;
@@ -58,7 +67,7 @@
 		return $this;
 	}
 
-	public function getContentType():string
+	public function getContentType():?string
 	{
 		return $this->content_type;
 	}

--
Gitblit v1.10.0