From 58dccc86754deda247eb49310c266f6cba86d36a Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Thu, 01 Jan 2026 23:40:35 +0000
Subject: [PATCH] Merge branch 'main' of https://github.com/jakevdwerf/jvb

---
 inc/blocks/RegisterBlocks.php |   59 +++++++++++++++--------------------------------------------
 1 files changed, 15 insertions(+), 44 deletions(-)

diff --git a/inc/blocks/RegisterBlocks.php b/inc/blocks/RegisterBlocks.php
index 596de1b..5408503 100644
--- a/inc/blocks/RegisterBlocks.php
+++ b/inc/blocks/RegisterBlocks.php
@@ -6,16 +6,30 @@
 	exit;
 }
 //Blocks
-if (jvbSiteUsesFeedBlock()) {
+if (Features::forSite()->has('feed_block')) {
     require(JVB_DIR . '/build/feed/render.php');
 }
 require(JVB_DIR . '/build/list/render.php');
 require(JVB_DIR . '/build/summary/render.php');
 require(JVB_DIR . '/build/forms/render.php');
 require(JVB_DIR . '/build/menu/render.php');
+if (Features::anyContentHas('is_glossary')) {
+	error_log('Has Glossary Type');
+	require(JVB_DIR . '/build/glossary/render.php');
+}
+if (Features::forSite()->has('faq') || array_key_exists('faq', JVB_CONTENT)) {
+	require(JVB_DIR . '/build/faq/render.php');
+}
+if (Features::hasIntegration('gmb')) {
+	require(JVB_DIR . '/build/gmbreviews/render.php');
+}
+
 
 function jvbRegisterBlocks():void
 {
+	if (Features::hasIntegration('gmb')) {
+		register_block_type(JVB_DIR . '/build/gmb-reviews');
+	}
 //    if (jvbSiteUsesFeedBlock()) {
 //        register_block_type(
 //            JVB_DIR . '/build/feed',
@@ -47,49 +61,6 @@
 }
 add_filter('block_categories_all', 'jvbRegisterBlockCategory');
 
-//Get our loaded types
-function jvbRegisterFeedTypes():void
-{
-    global $jvb_feed;
-    global $jvb_taxonomy_for;
-
-
-    wp_localize_script('jvb-feed-block-editor', 'jvbBlockSettings', [
-        'contentTypes'    => $jvb_feed,
-        'taxonomyFor'   =>  $jvb_taxonomy_for
-    ]);
-
-
-    // Filter for block.json
-    add_filter('block_type_metadata', function ($metadata) use ($jvb_feed) {
-        if ($metadata['name'] === 'jvb/feed') {
-            $metadata['attributes']['contentTypes']['items']['enum'] = array_keys($jvb_feed);
-        }
-        return $metadata;
-    });
-}
-add_action('wp_loaded', 'jvbRegisterFeedTypes');
-
-if (jvbSiteUsesFeedBlock()) {
-    add_action('rest_api_init', 'jvbGetFeedTypes');
-    function jvbGetFeedTypes():void
-    {
-        register_rest_route(
-            'jvb/v1',
-            'types',
-            [
-                'permission_callback'    => function () {
-                    return is_user_logged_in();
-                },
-                'callback'    => function () {
-                    global $jvb_feed;
-                    return new WP_REST_Response(json_encode((object) $jvb_feed));
-                }
-            ]
-        );
-    }
-}
-
 
 /**
  * Enqueue block editor assets

--
Gitblit v1.10.0