From ed57c386db34d8693ca75311972d0929ebe5f488 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Mon, 01 Jun 2026 22:23:19 +0000
Subject: [PATCH] =Added some more Schema classes, allowed for override of  array in outputSchema for complex schema, as for timeline post types

---
 inc/managers/SEO/render/Traits/_Properties/sourceOrganizationTrait.php |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/inc/managers/SEO/render/Traits/_Properties/sourceOrganizationTrait.php b/inc/managers/SEO/render/Traits/_Properties/sourceOrganizationTrait.php
index 28cf23f..0f25b6d 100644
--- a/inc/managers/SEO/render/Traits/_Properties/sourceOrganizationTrait.php
+++ b/inc/managers/SEO/render/Traits/_Properties/sourceOrganizationTrait.php
@@ -2,22 +2,37 @@
 namespace JVBase\managers\SEO\render\Traits\_Properties;
 
 use JVBase\managers\SEO\render\Thing\Organization\Organization;
+use JVBase\managers\SEO\render\Traits\_Helpers\arrayHelper;
 
 if (!defined('ABSPATH')) {
 	exit;
 }
 trait sourceOrganizationTrait {
+	use arrayHelper;
 	/**
-	 * @var Organization The Organization on whose behalf the creator was working.
+	 * @var Organization|array The Organization on whose behalf the creator was working.
 	 */
-	protected Organization $sourceOrganization;
+	protected Organization|array $sourceOrganization;
 
 	public function getSourceOrganization():?Organization
 	{
 		return $this->sourceOrganization??null;
 	}
-	public function setSourceOrganization(Organization $sourceOrganization):void
+	public function setSourceOrganization(string|array|Organization $sourceOrganization):void
 	{
+		if (is_string($sourceOrganization)) {
+			if (empty($sourceOrganization)) {
+				return;
+			}
+			//TODO: create organization from string
+			return;
+		} elseif (is_array($sourceOrganization)) {
+			$sourceOrganization = $this->mixedArray('sourceOrganization', $sourceOrganization, [
+				'JVBase\managers\SEO\render\Thing\Person',
+				'JVBase\managers\SEO\render\Thing\Organization\LocalBusiness\LocalBusiness',
+            	'JVBase\managers\SEO\render\Thing\Organization\Organization',
+			]);
+		}
 		$this->sourceOrganization = $sourceOrganization;
 	}
 }

--
Gitblit v1.10.0