From 235ce5716edc2f7cbe80fdccf26eac7269587839 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Mon, 08 Jun 2026 04:38:18 +0000
Subject: [PATCH] =FavouritesManager.php and FavouritesRoutes.php fixes. Moving all logic to FavouritesManager.php. Still some left to do
---
inc/blocks/CustomBlocks.php | 104 ++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 81 insertions(+), 23 deletions(-)
diff --git a/inc/blocks/CustomBlocks.php b/inc/blocks/CustomBlocks.php
index 0a9cc31..9d77437 100644
--- a/inc/blocks/CustomBlocks.php
+++ b/inc/blocks/CustomBlocks.php
@@ -24,7 +24,7 @@
protected static ?int $currentQueryId = null;
protected static array $counters = [];
protected static ?WP_Query $originalQuery = null;
- protected array $ignore = ['align','alt','area','aspectRatio','backgroundColor','borderColor','buttonText','buttonPosition','buttonUseIcon','categories','className','columns','contentPosition','customOverlayColor','dimRatio','displayAsDropdown','displayAuthor','displayFeaturedImage','displayPostContent','displayPostContentRadio','displayPostDate','excerptLength','featuredImageAlign','fontSize','gradient','hasFixedLayout','hasParallax','height','iconColor','iconColorValue','iconColorValue','iconBackgroundColor','iconBackgroundColorValue','id','imageFill','isDark','isLink','isObjectPosition','isRepeated','isSearchFieldHidden','isStackedOnMobile','isUserOverlayColor','kind','label','largestFontSize','layout','lightbox','linkDestination','linkTo','level','mediaId','mediaLink','mediaPosition','mediaSizeSlug','mediaType','mediaWidth','metadata','minHeight','minHeightUnit','opacity','opensInNewTab','order','orderBy','ordered','overlayColor','overlayMenu','placeholder','postLayout','postsToShow','query', 'queryId','ref','rel','scale','shouldSyncIcon','showContent','showEmpty','showHierarchy','showLabel','showLabels','showOnlyTopLevel','showPostCounts','showTagCounts','size','sizeSlug','slug','smallestFontSize','tagName','taxonomy','term','textAlign','textColor','theme','title','type','url','useFeaturedImage','verticalAlignment','width','widthUnit',];
+ protected array $ignore = ['align','alt','area','aspectRatio','backgroundColor','borderColor','buttonText','buttonPosition','buttonUseIcon','categories','className','columns','contentPosition','customOverlayColor','datetime','dimRatio','displayAsDropdown','displayAuthor','displayFeaturedImage','displayPostContent','displayPostContentRadio','displayPostDate','excerptLength','featuredImageAlign','fontSize','gradient','hasFixedLayout','hasParallax','height','iconColor','iconColorValue','iconColorValue','iconBackgroundColor','iconBackgroundColorValue','id','imageFill','isDark','isLink','isObjectPosition','isRepeated','isSearchFieldHidden','isStackedOnMobile','isUserOverlayColor','kind','label','largestFontSize','layout','lightbox','linkDestination','linkTo','level','mediaId','mediaLink','mediaPosition','mediaSizeSlug','mediaType','mediaWidth','metadata','minHeight','minHeightUnit','opacity','opensInNewTab','order','orderBy','ordered','overlayColor','overlayMenu','placeholder','postLayout','postsToShow','query', 'queryId','ref','rel','scale','shouldSyncIcon','showContent','showEmpty','showHierarchy','showLabel','showLabels','showOnlyTopLevel','showPostCounts','showTagCounts','size','sizeSlug','slug','smallestFontSize','tagName','taxonomy','term','textAlign','textColor','theme','title','type','url','useFeaturedImage','verticalAlignment','width','widthUnit',];
//For custom style output for nested links, etc
protected static array $pendingStyles = [];
@@ -88,6 +88,27 @@
'label' => __('With Logo', 'jvb')
]
);
+ register_block_style(
+ 'core/gallery',
+ [
+ 'name' =>'hexagon',
+ 'label' => __('Hexagonal', 'jvb')
+ ]
+ );
+ register_block_style(
+ 'core/gallery',
+ [
+ 'name' =>'diamond',
+ 'label' => __('Diamond', 'jvb')
+ ]
+ );
+ register_block_style(
+ 'core/gallery',
+ [
+ 'name' =>'cut',
+ 'label' => __('Cut Corners', 'jvb')
+ ]
+ );
}
protected function checkMethods(?string $content, array $block, ?WP_Block $parent = null, bool $isPrerender = false):?string
{
@@ -102,7 +123,7 @@
} else if (method_exists($this, $method)) {
$content = $this->$method($block, $content, $parent);
return $isPrerender ? $this->maybeOutputCustomStyles().$content : $content;
- } elseif (!empty($blockName) && JVB_TESTING) {
+ } elseif (JVB_TESTING && !empty($blockName)) {
if (!in_array($block['blockName'], $this->getIgnore($isPrerender))) {
jvbDump('No method found for '.print_r($block['blockName'], true));
}
@@ -113,7 +134,18 @@
{
//Ignore for both
$base = [
- 'core/null'
+ 'core/null',
+ 'core/list-item',
+ 'core/post-content',
+ 'jvb/drawer-menu',
+ 'jvb/summary',
+ 'jvb/feed',
+ 'jvb/forms',
+ 'jvb/gmbreviews',
+ 'jvb/timeline',
+ 'jvb/video',
+ 'jvb/faq',
+ 'jvb/glossary'
];
if ($isPrerender) {
$base = array_merge($base, [
@@ -140,13 +172,20 @@
public function render(string $content, array $block):string
{
- if ($block['blockName'] === 'jvb/feed') {
- // Enqueue the feed block script (it will automatically load dependencies)
- $this->localize_feedblock();
+ switch ($block['blockName']) {
+ case 'jvb/feed':
+ $this->localize_feedblock();
+ break;
+ case 'jvb/forms':
+ wp_enqueue_style('jvb-form');
+ break;
+ case 'jvb/timeline':
+ wp_enqueue_script('jvb-gallery');
+ add_action('wp_footer', 'jvbRenderGallery');
+ break;
}
- if ($block['blockName'] === 'jvb/forms') {
- wp_enqueue_style('jvb-form');
- }
+
+
return $this->checkMethods($content, $block);
}
@@ -231,7 +270,7 @@
public function prerender_core_columns(array $block, ?string $content, ?WP_Block $parent):?string
{
- jvbDump($block, 'columns');
+// jvbDump($block, 'columns');
$attrs = $block['attrs']??[];
$tagName = array_key_exists('tagName', $attrs) ? $attrs['tagName'] : 'section';
@@ -654,7 +693,7 @@
public function prerender_core_paragraph(array $block, ?string $content, ?WP_Block $parent):?string
{
- jvbDump($block, 'paragraph');
+// jvbDump($block, 'paragraph');
// jvbDump($parent, 'Parent');
$inside = $this->inside($block);
return empty($inside) ? '' : sprintf(
@@ -731,7 +770,11 @@
'<table%s',
$this->getClassesAndStyles($attrs)
), $table);
- $caption = str_replace(strtok($parts[1], '>'), '<figcaption', $parts[1]);
+ $caption = '';
+ if (array_key_exists(1, $parts)) {
+ $caption = str_replace(strtok($parts[1], '>'), '<figcaption', $parts[1]);
+ }
+
return sprintf(
'<figure%s>%s%s</figure>',
@@ -1359,7 +1402,10 @@
$inner = '';
if (!static::$currentLoop) {
- jvbDump('No loop stored');
+
+ if (JVB_TESTING) {
+ jvbDump('No loop stored');
+ }
return $content;
}
if (static::$currentLoop->have_posts()) {
@@ -1372,6 +1418,7 @@
);
}
}
+
return sprintf(
'<ul%s>%s</ul>',
$this->getClassesAndStyles($block['attrs']??[], ['loop']),
@@ -1493,7 +1540,9 @@
protected function buildQueryArgs(array $attrs): array
{
$queryID = $attrs['queryId'] ?? null;
- $args = [];
+ $args = [
+ 'post_status' => 'publish',
+ ];
foreach (($attrs['query'] ?? []) as $key => $value) {
if (empty($value)) continue;
switch ($key) {
@@ -1799,7 +1848,7 @@
public function prerender_core_query_title(array $block, ?string $content, ?WP_Block $parent):?string
{
- jvbDump($block, 'query title');
+// jvbDump($block, 'query title');
$attr = $block['attrs'];
$name = '';
$showPrefix = $attr['showPrefix']??false;
@@ -1952,7 +2001,7 @@
//core_archives
public function render_core_archives(array $block, string $content):string
{
- jvbDump($block, 'archives');
+// jvbDump($block, 'archives');
$attrs = $block['attrs']??[];
$isDropdown = $this->checkAttrs('displayAsDropdown', $attrs);
@@ -2214,7 +2263,6 @@
}
$inside = [];
foreach($pages->posts as $page) {
- jvbDump($page);
$inside[] = sprintf(
'<li><a href="%s">%s</a>',
get_the_permalink($page->ID),
@@ -2782,8 +2830,9 @@
$type = 'row';
$isRow = true;
+
//Determine type
- if ((array_key_exists('type', $value) && !in_array($value['type'], ['flex', 'grid'])) ||
+ if ((array_key_exists('type', $value) && !in_array($value['type'], ['flex', 'grid', 'default'])) ||
(array_key_exists('orientation', $value) && $value['orientation'] === 'vertical')) {
$type = 'col';
$isRow = false;
@@ -3209,7 +3258,10 @@
$styles['color'] = $this->getColor($v['text']);
}
if (isset($v['gradient'])) {
- jvbDump($v, 'Gradient');
+
+ if (JVB_TESTING) {
+ jvbDump($v, 'Gradient');
+ }
}
break;
@@ -3279,7 +3331,9 @@
if ($sk === 'minHeight') {
$styles['min-height'] = $sv;
} else {
- jvbDump('No config set for dimension '.$sk.': '.print_r($sv, true));
+ if (JVB_TESTING) {
+ jvbDump('No config set for dimension '.$sk.': '.print_r($sv, true));
+ }
}
}
@@ -3340,7 +3394,7 @@
unset($border['style']);
unset($border['color']);
if (!empty($border)) {
- jvbDump($border,'[getBorderStyle] Leftover styles:');
+ jvbDump($border, '[getBorderStyle] Leftover styles:');
}
}
@@ -3413,6 +3467,7 @@
break;
case 'textAlign':
$styles['text-align'] = $value;
+ break;
default:
if (JVB_TESTING) {
jvbDump($value,'[getTypographyStyle] No property set for '.$property.': ');
@@ -3443,8 +3498,11 @@
}, $selectors);
$fullSelector = implode(',', $fullSelector);
- jvbDump($state, 'state');
- jvbDump($rules, 'rules');
+
+ if (JVB_TESTING) {
+ jvbDump($state, 'state');
+ jvbDump($rules, 'rules');
+ }
if (isset($rules['color']['text']) || isset($rules['text'])) {
$css['color'] = $this->getColor($rules['color']['text'] ?? $rules['text']);
--
Gitblit v1.10.0