From 772462eeca3002a1d52508aeba485aab2b4742ad Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Tue, 03 Mar 2026 19:06:19 +0000
Subject: [PATCH] =MAJOR OVERHAUL. Likely should have made a new branch ages ago. Key changes: Registrar.php is the base for custom post types, taxonomies, and user roles. Replaces JVB_CONTENT, JVB_TAXONOMY, and JVB_USER constants, eliminates most of Features.php (except for JVB_SITE, JVB_MEMBERSHIP), and has built in sanitizing and validation via sub-classes. Also started a major overhaul of the Schema output. Created a shit ton of property traits and classes to help sanitize and ensure proper data for different schema types. Still a bunch to do, but better to be starting committing changes here on this other branch.

---
 inc/registry/TaxonomyRegistrar.php |   29 +++++++++++++++++------------
 1 files changed, 17 insertions(+), 12 deletions(-)

diff --git a/inc/registry/TaxonomyRegistrar.php b/inc/registry/TaxonomyRegistrar.php
index 67fed28..21f4450 100644
--- a/inc/registry/TaxonomyRegistrar.php
+++ b/inc/registry/TaxonomyRegistrar.php
@@ -1,8 +1,9 @@
 <?php
 namespace JVBase\registry;
 
-use JVBase\meta\MetaManager;
-use JVBase\meta\MetaRegistry;
+use JVBase\managers\CRUD;
+use JVBase\meta\Meta;
+use JVBase\meta\Registry;
 if (!defined('ABSPATH')) {
 	exit;
 }
@@ -27,6 +28,7 @@
 		if ($this->config['is_content'] ?? false) {
 			$this->setupContentTaxonomyHooks();
 		}
+		add_filter('jvbDashboardPage', [$this, 'renderDashPage'], 10, 3);
 	}
 
 	public function register(): void
@@ -52,7 +54,7 @@
 
 		$this->maybeAddRewriteRule($args['rewrite']);
 		if (!empty($this->fields)) {
-			$meta_registry = new MetaRegistry($this->fields, $this->slug, 'term');
+			$meta_registry = new Registry($this->fields, $this->slug, 'term');
 			$meta_registry->registerMetaFields();
 		}
 	}
@@ -218,7 +220,7 @@
         ];
 
         // Get meta manager for this term
-        $meta = new MetaManager($term_id, 'term');
+        $meta = Meta::forTerm($term_id);
 		$values = $meta->getAll(array_keys($custom_fields));
 
         // Process each custom field
@@ -333,12 +335,15 @@
         return $data;
     }
 
-    /**
-     * Get custom table fields for this taxonomy
-     * @return array Field definitions
-     */
-    protected function getCustomTableFields():array
-    {
-        return jvbContentTaxonomiesTableFields($this->slug)['fields'] ?? [];
-    }
+	public function renderDashPage(string $content, string $page, string $slug):string
+	{
+		if ($slug === $this->slug) {
+			ob_start();
+			$crud = new CRUD($slug);
+			$crud->render();
+			return ob_get_clean();
+		}
+
+		return $content;
+	}
 }

--
Gitblit v1.10.0