From c16a4d78d07e81ecdd2ff9b1b9090560ab2fe488 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Fri, 04 Sep 2026 22:25:09 +0000
Subject: [PATCH] =Got the panel loading up the fields, organized by section! Now to ensure it saves properly. Still need to add: upload fields, selector fields, repeater/taglist/group fields
---
inc/blocks/FormBlock.php | 24 ++++++++++++------------
1 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/inc/blocks/FormBlock.php b/inc/blocks/FormBlock.php
index 0d447da..9aa7c30 100644
--- a/inc/blocks/FormBlock.php
+++ b/inc/blocks/FormBlock.php
@@ -1,6 +1,7 @@
<?php
namespace JVBase\blocks;
+use JVBase\integrations\services\Cloudflare;
use JVBase\managers\Cache;
use JVBase\meta\Form;
use JVBase\base\Site;
@@ -33,7 +34,8 @@
public function __construct()
{
- $this->cache = Cache::for('forms', WEEK_IN_SECONDS);
+ $this->cache = Cache::for('forms', null, WEEK_IN_SECONDS);
+
// Initialize forms from filter
$this->forms = $this->registerForms();
@@ -60,7 +62,7 @@
// Enqueue Turnstile if needed
if (Site::hasIntegration('cloudflare')) {
- $cloudflare = JVB()->connect('cloudflare');
+ $cloudflare = Cloudflare::getInstance();
if ($cloudflare->isSetUp()) {
$cloudflare->enqueueTurnstileScripts();
}
@@ -89,10 +91,9 @@
$forms = apply_filters('jvb_register_forms', $default_forms);
// Process forms to ensure they have proper structure
- $processed_forms = [];
- foreach ($forms as $form_key => $form_config) {
- $processed_forms[$form_key] = $this->processFormConfig($form_config);
- }
+ $processed_forms = array_map(function ($form_config) {
+ return $this->processFormConfig($form_config);
+ }, $forms);
return $processed_forms;
}
@@ -128,9 +129,8 @@
return '<div class="jvb-form-error">No valid form type selected. Please edit this block and select a form type.</div>';
}
- $cache_key = $this->cache->generateKey($block);
return $this->cache->remember(
- $cache_key,
+ $block,
function() use ($form_type, $block) {
return $this->renderForm($form_type, $block);
}
@@ -276,7 +276,7 @@
}
}
- echo '<form id="' . esc_attr($form_id) . '" data-form-id="'.esc_attr($type).'" data-save="form">';
+ echo '<form id="' . esc_attr($form_id) . '" data-form-id="'.esc_attr($type).'" data-save="form" data-handled data-step>';
// wp_nonce_field('jvb_form_' . $type);
}
@@ -318,7 +318,7 @@
echo '<div class="container">';
if ($total > 1) {
echo '<div class="form-progress">';
- jvbRenderProgressBar('<span class="step-text">Step <span class="current">1</span> of ' . $total . '</span>');
+ jvbRenderProgressBar('<span class="step-text">Step <span class="current">1</span> of ' . $total . '</span>', false, false);
echo '</div>';
}
@@ -332,7 +332,7 @@
echo '<button type="button" class="tab' . $active_class . '" data-tab="' . esc_attr($slug) . '" data-step="'.$i.'" role="tab" aria-selected="' . $aria_selected . '">';
echo '<span class="step-number">' . $i . '</span>';
- echo '<h2>' . esc_html($section['label'] ?? $section) . '</h2>';
+ echo '<span>' . esc_html($section['label'] ?? $section) . '</span>';
echo '</button>';
$i++;
}
@@ -406,7 +406,7 @@
return;
}
- $cloudflare = JVB()->connect('cloudflare');
+ $cloudflare = Cloudflare::getInstance();
if ($cloudflare->isSetUp()) {
$cloudflare->renderTurnstile();
}
--
Gitblit v1.10.0