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/managers/SEO/render/Traits/_Properties/additionalPropertyTrait.php |   19 +++++++++++++++++++
 1 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/inc/managers/SEO/render/Traits/_Properties/additionalPropertyTrait.php b/inc/managers/SEO/render/Traits/_Properties/additionalPropertyTrait.php
index 8102e25..191efbe 100644
--- a/inc/managers/SEO/render/Traits/_Properties/additionalPropertyTrait.php
+++ b/inc/managers/SEO/render/Traits/_Properties/additionalPropertyTrait.php
@@ -23,7 +23,26 @@
 	public function setAdditionalProperty(PropertyValue|array $additionalProperty):void
 	{
 		if (is_array($additionalProperty)) {
+			if (!is_numeric(array_key_first($additionalProperty))) {
+				$additionalProperty = [$additionalProperty];
+			}
+			$additionalProperty = array_map(function($property) {
+				if (!array_key_exists('type', $property)) {
+					$property['type'] = 'JVBase\managers\SEO\render\Thing\Intangible\StructuredValue\PropertyValue';
+				}
+				return $property;
+			}, $additionalProperty);
 			$additionalProperty = $this->classArray('additionalProperty', $additionalProperty, 'JVBase\managers\SEO\render\Thing\Intangible\StructuredValue\PropertyValue');
+
+			$additionalProperty = array_filter($additionalProperty, function ($property) {
+				return property_exists($property, 'value') && !empty($property->value);
+			});
+		}
+		if (!empty($this->additionalProperty)) {
+			if (!is_array($this->additionalProperty)) {
+				$this->additionalProperty = [$this->additionalProperty];
+			}
+			$additionalProperty = array_merge($this->additionalProperty, $additionalProperty);
 		}
 		$this->additionalProperty = $additionalProperty;
 	}

--
Gitblit v1.10.0