From 747d741293e064a979d7bf6c143ef969ea6d7629 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Sun, 24 May 2026 20:49:44 +0000
Subject: [PATCH] =GMBReview block minor tweaks. Refactored ReferralManager.php and ReferralRoutes.php to utilize the manager for all logic, and CustomTable for table interactions.
---
inc/helpers/time.php | 40 ++++++++++++++++++++++------------------
1 files changed, 22 insertions(+), 18 deletions(-)
diff --git a/inc/helpers/time.php b/inc/helpers/time.php
index 6f94c49..e83d48b 100644
--- a/inc/helpers/time.php
+++ b/inc/helpers/time.php
@@ -1,6 +1,7 @@
<?php
-use JVBase\managers\CacheManager;
+use JVBase\managers\Cache;
+use JVBase\meta\Meta;
if (!defined('ABSPATH')) {
exit;
@@ -135,34 +136,36 @@
/**
* @param int $ID
- * @param JVBase\Meta\MetaManager $meta
+ * @param string $type
*
* @return string
*/
-function jvbRenderHours(int $ID, JVBase\Meta\MetaManager $meta):string
+function jvbRenderHours(int $ID, string $type = ''):string
{
- $cache = CacheManager::for('hours-'.$ID, WEEK_IN_SECONDS)->connectTo('taxonomy');
- $key = 'hours_display';
- $cached = $cache->get($key);
+ $cache = Cache::for('hours_display', WEEK_IN_SECONDS)->connect('taxonomy')->connect('post')->connect('user');
+
+ $cached = $cache->get($ID);
if ($cached !== false) {
return $cached;
}
+ $meta = match($type){
+ 'post' => Meta::forPost($ID),
+ 'term' => Meta::forTerm($ID),
+ 'user' => Meta::forUser($ID),
+ default => false
+ };
if (!$meta) {
- if (term_exists((int)$ID)) {
- $type = 'term';
- } elseif (get_post_status((int)$ID)) {
- $type = 'post';
- } else {
- $type = 'user';
- }
- $meta = new JVBase\meta\MetaManager($ID, $type);
+ $meta = jvbGetMeta($ID);
+ }
+ if (!$meta) {
+ return '';
}
- $hours = $meta->getValue('hours');
- $byAppt = $meta->getValue('by_appointment');
- $walkins = $meta->getValue('walkins');
+ $hours = $meta->get('hours');
+ $byAppt = $meta->get('by_appointment');
+ $walkins = $meta->get('walkins');
$out = '';
@@ -185,7 +188,7 @@
$out .= '<p class="hours-notes"><small>' . implode(' • ', $notes) . '</small></p>';
}
- $cache->set($key, $out);
+ $cache->set($ID, $out);
return $out;
}
@@ -392,6 +395,7 @@
* @param array $hours_data Day-based hours data
* @param string $timezone Timezone string
* @return string|null Next opening time description or null if never opens
+ * @throws DateInvalidTimeZoneException
*/
function jvbGetNextOpeningTime(array $hours_data, string $timezone = 'America/Edmonton'): ?string {
if (!jvbHasOperatingHours($hours_data)) {
--
Gitblit v1.10.0