From c910ace4342b0c337490af8cfd3c431a36b6feae Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Mon, 09 Feb 2026 02:13:13 +0000
Subject: [PATCH] =Schema patches
---
inc/meta/Form.php | 29 ++++++++++++++++++++++++-----
1 files changed, 24 insertions(+), 5 deletions(-)
diff --git a/inc/meta/Form.php b/inc/meta/Form.php
index f6de609..7ba1458 100644
--- a/inc/meta/Form.php
+++ b/inc/meta/Form.php
@@ -103,6 +103,7 @@
$datasets
);
+ $output .= static::buildCharacterLimit($config);
$output .= static::buildLabel($name, $config);
if (!array_key_exists('skipInput', $config)) {
$output .= static::buildInput($content);
@@ -179,6 +180,21 @@
);
}
+ protected static function buildCharacterLimit(array $config): string
+ {
+ $type = $config['type'] ?? 'text';
+ if (in_array($type, ['upload', 'gallery', 'selector'])) {
+ return '';
+ }
+ if (empty($config['maxlength'])) {
+ return '';
+ }
+ return sprintf(
+ '<span class="char-limit"><span class="current">0</span> / <span class="limit">%s</span></span>',
+ esc_html($config['maxlength'])
+ );
+ }
+
protected static function buildLabel(string $name, array $config):string
{
if (!empty($config['label'])) {
@@ -500,7 +516,7 @@
$optionsHtml .= sprintf(
'<option value="%s"%s>%s</option>',
esc_attr($optValue),
- selected($value, $optValue),
+ selected($value, $optValue, false),
esc_html($optLabel)
);
}
@@ -574,7 +590,7 @@
esc_attr($name),
$optValue,
esc_attr($optValue),
- checked($value, $optValue),
+ checked($value, $optValue,false),
esc_attr($name),
$optValue,
esc_html($optLabel)
@@ -651,7 +667,7 @@
?? str_replace('_', ' ',$config['content']);
}
if ($config['limit'] > 0) {
- $config['data']['limit'] = $config['limit'];
+ $config['data']['max-files'] = $config['limit'];
}
$attachmentIds = static::parseIds($value);
@@ -697,7 +713,8 @@
$input .= '<div class="file-error"></div>';
$input .= jvbRenderProgressBar('', false, true, true);
- $input .= '</div>';
+
+ $input .= '</div>'; // closes .file-upload-wrapper
if ($config['destination'] === 'post_group') {
$input .= static::renderUploadGroupAreaStart($config, $plural, $singular);
@@ -708,6 +725,7 @@
$input .= static::renderUploadGroupAreaEnd($config, $plural, $singular);
}
+ $input .= '</div>'; // closes .file-upload-container
unset($config['description']);
unset($config['label']);
return static::fieldWrap($name, $input, $config);
@@ -1636,12 +1654,13 @@
foreach ($fields as $fieldName => $fieldConfig) {
$fieldValue = $values[$fieldName] ?? '';
- $fullName = "{$name}:{$fieldName}";
+ $fullName = array_key_exists('wrap', $config) ? $fieldName : "{$name}:{$fieldName}";
$output .= static::render($fullName, $fieldValue, $fieldConfig);
}
$output .= sprintf('</%s>', esc_attr($wrapper));
+ unset($config['label']);
return static::fieldWrap($name, $output, $config);
}
--
Gitblit v1.10.0