From 2127b1bdd73ecd2423e443992da4b442f5a3c1a3 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Wed, 04 Feb 2026 21:19:25 +0000
Subject: [PATCH] =Major overhaul of MetaManager.php -> Meta.php and RestRouteManager.php -> Rest.php. Seems to work for JakeVan

---
 inc/blocks/FormBlock.php |   43 ++++++++++++++++---------------------------
 1 files changed, 16 insertions(+), 27 deletions(-)

diff --git a/inc/blocks/FormBlock.php b/inc/blocks/FormBlock.php
index fd5fe29..216857d 100644
--- a/inc/blocks/FormBlock.php
+++ b/inc/blocks/FormBlock.php
@@ -1,12 +1,9 @@
 <?php
 namespace JVBase\blocks;
 
-use JVBase\managers\CacheManager;
-use JVBase\meta\MetaManager;
-use JVBase\managers\CloudflareTurnstile;
-use Exception;
+use JVBase\managers\Cache;
+use JVBase\meta\Form;
 use JVBase\utility\Features;
-use WP_Block;
 
 if (!defined('ABSPATH')) {
 	exit; // Exit if accessed directly
@@ -19,8 +16,8 @@
  */
 class FormBlock
 {
-	protected static FormBlock|null $instance = null;
-	protected CacheManager $cache;
+	protected static ?FormBlock $instance = null;
+	protected Cache $cache;
 	protected array $forms;
 	protected string $form_contact;
 
@@ -36,11 +33,11 @@
 
 	public function __construct()
 	{
-		$this->cache = CacheManager::for('form_blocks', WEEK_IN_SECONDS);
+		$this->cache = Cache::for('forms', WEEK_IN_SECONDS);
 		// Initialize forms from filter
 		$this->forms = $this->registerForms();
 		$this->form_contact = apply_filters('jvb_form_contact', '');
-
+		
 		// Hook into the CustomBlocks render system
 		add_filter('jvb_render_block_jvb_forms', [$this, 'render'], 10, 2);
 
@@ -131,16 +128,12 @@
 		}
 
 		$cache_key = $this->cache->generateKey($block);
-		$cached = $this->cache->get($cache_key);
-		$cached = false;
-		if ($cached) {
-			return $cached;
-		}
-
-		$rendered = $this->renderForm($form_type, $block);
-
-		$this->cache->set($cache_key, $rendered);
-		return $rendered;
+		return $this->cache->remember(
+			$cache_key,
+			function() use ($form_type, $block) {
+				return $this->renderForm($form_type, $block);
+			}
+		);
 	}
 
 	/**
@@ -185,7 +178,6 @@
 		$this->renderTurnstile();
 		$this->renderFormEnd($type, $form_id);
 		echo '</div>';
-
 		return ob_get_clean();
 	}
 
@@ -298,17 +290,14 @@
 			return;
 		}
 
-		// Create MetaManager instance for form rendering
-		$meta = new MetaManager();
-
 		// If sections are defined, render in sections
 		if (!empty($form_config['sections'])) {
-			$this->renderSections($type, $meta);
+			$this->renderSections($type);
 		} else {
 			echo jvbFormStatus();
 			// Render fields directly
 			foreach ($form_config['fields'] as $field_name => $field_config) {
-				$meta->render('form', $field_name, $field_config);
+				echo Form::render($field_name, null, $field_config);
 			}
 			$submit_text = $form_config['submit'] ?? 'Submit';
 			echo '<button type="submit" class="button primary">' . esc_html($submit_text) . '</button>';
@@ -318,7 +307,7 @@
 	/**
 	 * Render form sections
 	 */
-	protected function renderSections(string $type, MetaManager $meta): void
+	protected function renderSections(string $type): void
 	{
 		$form_config = $this->forms[$type];
 		$sections = $form_config['sections'];
@@ -373,7 +362,7 @@
 			});
 
 			foreach ($section_fields as $field_name => $field_config) {
-				$meta->render('form', $field_name, $field_config);
+				echo Form::render($field_name, null, $field_config);
 			}
 
 			// Add step navigation buttons

--
Gitblit v1.10.0