Jake Vanderwerf
5 days ago a9b3b28d001941921aa70d37fdc87c758a163a44
inc/integrations/GoogleMyBusiness.php
@@ -1,8 +1,7 @@
<?php
namespace JVBase\integrations;
use JVBase\meta\MetaManager;
use JVBase\managers\CacheManager;
use JVBase\meta\Meta;
use WP_Error;
if (!defined('ABSPATH')) {
   exit;
@@ -129,7 +128,9 @@
         ]
      );
//    $this->cache->clear();
      if (JVB_TESTING) {
         $this->cache->flush();
      }
   }
   protected function initialize(): void
@@ -281,7 +282,7 @@
      }
      $postID = $data['post_id'];
      $meta = new MetaManager($postID, 'post');
      $meta = Meta::forPost($postID);
      $fields = [
         'start_date',
         'end_date',
@@ -317,7 +318,7 @@
         $result =  $this->updatePost($fields["_{$this->service_name}_item_id"], $data);
      } else {
         $result = $this->createPost($data);
         $meta->updateValue("_{$this->service_name}_item_id", $result['name']);
         $meta->set("_{$this->service_name}_item_id", $result['name']);
      }
      return [
@@ -338,7 +339,7 @@
      }
      $postID = $data['post_id'];
      $meta = new MetaManager($postID, 'post');
      $meta = Meta::forPost($postID);
      $fields = [
         'post_excerpt',
         'post_title',
@@ -370,7 +371,7 @@
         $result =  $this->updatePost($fields["_{$this->service_name}_item_id"], $data);
      } else {
         $result = $this->createPost($data);
         $meta->updateValue("_{$this->service_name}_item_id", $result['name']);
         $meta->set("_{$this->service_name}_item_id", $result['name']);
      }
      return [
@@ -392,7 +393,7 @@
      }
      $postID = $data['post_id'];
      $meta = new MetaManager($postID, 'post');
      $meta = Meta::forPost($postID);
      $fields = [
         'post_excerpt',
         'post_title',
@@ -421,7 +422,7 @@
         $result =  $this->updatePost($fields["_{$this->service_name}_item_id"], $data);
      } else {
         $result = $this->createPost($data);
         $meta->updateValue("_{$this->service_name}_item_id", $result['name']);
         $meta->set("_{$this->service_name}_item_id", $result['name']);
      }
      return [
@@ -2274,7 +2275,7 @@
   {
      try {
         // Use the static method to clear the entire cache group
         $this->cache->clear();
         $this->cache->flush();
         return true;
      } catch (\Exception $e) {
@@ -2469,7 +2470,7 @@
   protected function collectMenu(array $menu_items): array
   {
      $defaultMeta = new MetaManager($this->userID, 'integrations');
      $defaultMeta = Meta::forOptions($this->userID.'_integrations');
      $defaults = ['menu_name', 'menu_description', 'default_section', 'cuisines', 'source_url', 'language', 'default_currency'];
      $defaults = $defaultMeta->getAll($defaults);
@@ -2530,7 +2531,7 @@
   protected function buildMenuItem(\WP_Post $item, array $defaults):array
   {
      $meta = new MetaManager($item->ID, 'post');
      $meta = Meta::forPost($item->ID);
      $fields = $this->mappedMenuFields($item->post_type);
      $values = $meta->getAll(array_values($fields));
@@ -2659,8 +2660,8 @@
   protected function getMenuSectionsOrder(array $sections_map):array
   {
      $optionsMeta = new MetaManager(null, 'options');
      $sectionOrder = $optionsMeta->getValue('menu_section_order');
      $optionsMeta = Meta::forOptions('options');
      $sectionOrder = $optionsMeta->get('menu_section_order');
      // Build final GMB menu structure
      $ordered = [];
@@ -2696,8 +2697,8 @@
      // Collect cuisines from individual items if specified
      foreach ($menu_items as $item) {
         $meta = new MetaManager($item->ID, 'post');
         $item_cuisines = $meta->getValue('cuisines');
         $meta = Meta::forPost($item->ID);
         $item_cuisines = $meta->get('cuisines');
         if (!empty($item_cuisines)) {
            $item_cuisines = is_array($item_cuisines) ?