From bad59c66549eb601fed963ed013f9b79305ca003 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Wed, 07 Jan 2026 20:09:14 +0000
Subject: [PATCH] =Feedblock integrated with refactored taxonomy selector

---
 inc/helpers/ui.php |   45 +++++++++++++++++++++++++++++++--------------
 1 files changed, 31 insertions(+), 14 deletions(-)

diff --git a/inc/helpers/ui.php b/inc/helpers/ui.php
index cbfaf3b..256d908 100644
--- a/inc/helpers/ui.php
+++ b/inc/helpers/ui.php
@@ -205,19 +205,26 @@
  * Outputs the search bar (likely don't need anymore)
  * @return string
  */
-function jvbSearch(string $placeholder = 'Search...'):string
+function jvbSearch(string $placeholder = 'Search...', string $id = 'search'):string
 {
-    return '<div class="search-container row start nowrap">
-  <input type="search" id="search" placeholder="'.$placeholder.'">
-  <button
-    title="Clear Search"
-    type="button"
-    class="clear-search"
-    aria-label="Clear search"
-    onclick="this.previousElementSibling.value = \'\'; this.previousElementSibling.focus();"
-  >'.jvbIcon('x', ['title'=> 'Clear Search']).'</button>
-  <button type="button" title="Search" class="toggle search" aria-label="Toggles search input visually" onclick="this.parentNode.classList.toggle(\'open\');this.previousElementSibling.previousElementSibling.focus();">'.jvbIcon('magnifying-glass').'</button>
-</div>';
+	$id = sanitize_title($id);
+	return sprintf(
+		'<div class="search-container row start nowrap">
+		  <input type="search" id="%s" placeholder="%s">
+		  <button
+			title="Clear Search"
+			type="button"
+			class="clear-search"
+			aria-label="Clear search"
+			onclick="this.previousElementSibling.value = \'\'; this.previousElementSibling.focus();"
+		  >%s</button>
+		  <button type="button" title="Search" class="toggle search" aria-label="Toggles search input visually" onclick="this.parentNode.classList.toggle(\'open\');this.previousElementSibling.previousElementSibling.focus();">%s</button>
+		</div>',
+		$id,
+		$placeholder,
+		jvbIcon('x', ['title'=> 'Clear Search']),
+		jvbIcon('magnifying-glass')
+	);
 }
 
 
@@ -254,6 +261,13 @@
     return $image->formatImage($imgID, $start, $end, $addLink, $postSlug);
 }
 
+function jvbImageCaption(int $imgID, string $start = 'tiny', string $end = 'large', bool $addLink = true, ?string $postSlug = null):string
+{
+	$caption = wp_get_attachment_caption($imgID);
+	$caption = ($caption && $caption !== '') ? '<figcaption>'.apply_filters('the_content', $caption).'</figcaption>' : '';
+	return '<figure>'.jvbFormatImage($imgID, $start, $end, $addLink, $postSlug).$caption.'</figure>';
+}
+
 /**
  * Outputs the notification container in the footer
  * @return void
@@ -425,8 +439,11 @@
 		<div class="bar">
 			<div class="fill"></div>
 		</div>
-		<div class="details row btw">
-			<?=$inside?>
+		<div class="row btw">
+			<i class="icon"></i>
+			<div class="details">
+				<?=$inside?>
+			</div>
 		</div>
 	</div>
 	<?php

--
Gitblit v1.10.0