From 474109a5df0a06f5343ab184838fe2d80e3872a8 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Sun, 11 Jan 2026 19:23:20 +0000
Subject: [PATCH] =Fixed timeline CRUD.js issue where this.activeItem was set null when we still needed it
---
inc/meta/MetaManager.php | 21 ++++++++++++++++-----
1 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/inc/meta/MetaManager.php b/inc/meta/MetaManager.php
index a1d7dbc..57b8076 100644
--- a/inc/meta/MetaManager.php
+++ b/inc/meta/MetaManager.php
@@ -25,6 +25,8 @@
protected string|null $object_type;
protected int $max_file_size = 5242880;
protected ?string $content = null;
+
+ protected ?string $baseKey = null;
protected \wpdb $wpdb;
protected array $postFields = [
'post_title',
@@ -49,12 +51,11 @@
'description'
];
- public function __construct(?int $ID = null, ?string $type = null, ?string $content = null)
+ public function __construct(int|string|null $ID = null, ?string $type = null, ?string $content = null)
{
global $wpdb;
$this->wpdb = $wpdb;
- $this->object_id = $ID;
-
+ $this->object_id = is_int($ID) ? $ID : null;
$this->object_type = $type;
if ($ID) {
switch ($type) {
@@ -68,6 +69,10 @@
case 'integrations':
$this->data = get_user($ID);
break;
+ case 'options':
+ $this->baseKey = $ID;
+ $this->data = null;
+ break;
default:
$this->data = null;
break;
@@ -146,7 +151,10 @@
case 'integrations':
return get_user_meta($this->object_id, $meta_key, true);
case 'options':
- return get_option($meta_key);
+ $key = $this->baseKey
+ ? BASE . $this->baseKey . '_' . $name
+ : BASE . $name;
+ return get_option($key);
default:
return '';
}
@@ -354,7 +362,10 @@
$result = update_user_meta($this->object_id, $meta_key, $sanitized);
break;
case 'options':
- $result = update_option($meta_key, $sanitized);
+ $key = $this->baseKey
+ ? BASE . $this->baseKey . '_' . $name
+ : BASE . $name;
+ return update_option($key, $sanitized);
}
if ($result === false) {
--
Gitblit v1.10.0