Jake Vanderwerf
2026-08-28 a9654f00c8fbc9934289d761843ddd071025013f
inc/managers/Notifications/EmailDigests.php
@@ -1,12 +1,13 @@
<?php
namespace JVBase\managers\Notifications;
use JVBase\managers\Cache;
use JVBase\managers\CustomTable;
use JVBase\managers\Emails;
use JVBase\managers\NotificationManager;
use JVBase\managers\queue\Queue;
use JVBase\meta\Meta;
use JVBase\registrar\Registrar;
use WP_Error;
use WP_Query;
if (!defined('ABSPATH')) {
   exit; // Exit if accessed directly
@@ -122,7 +123,7 @@
         return;
      }
      JVB()->queue()->add(
      Queue::getInstance()->add(
         'email_notification_digest',
         0,
         [
@@ -142,7 +143,7 @@
      if (!in_array($frequency, ['never', 'daily', 'weekly', 'monthly'])) {
         return [];
      }
      return JVB()->notification()->getUsersByFrequency($frequency);
      return NotificationManager::getInstance()->getUsersByFrequency($frequency);
   }
   public function processOperation(WP_Error|array $result, object $operation, array $data):WP_Error|array
@@ -176,10 +177,10 @@
   protected function generateUserDigest(int $userID, string $frequency):string|false
   {
      $subscription = JVB()->notification()->getUserSubscriptions($userID, $frequency);
      $subscription = NotificationManager::getInstance()->getUserSubscriptions($userID, $frequency);
      //TODO
      $notifications = JVB()->notification()->getUserNotifications($userID);
      $notifications = NotificationManager::getInstance()->getUserNotifications($userID);
      if (empty($subscription) && empty($notifications)) {
         return false;
@@ -281,18 +282,18 @@
         $image = sprintf(
            '<a href="%s">%s</a>',
            $url,
            JVB()->email()->image($image[0], get_post_meta($img, '_wp_attachment_image_alt', true))
            Emails::getInstance()->image($image[0], get_post_meta($img, '_wp_attachment_image_alt', true))
         );
         $t = sprintf(
            '<a href="%s">%s</a>',
            $url,
            $m->get('post_title')
         );
         $output[] = JVB()->email()->card($image, $t);
         $output[] = Emails::getInstance()->card($image, $t);
      }
      $final = JVB()->email()->button($goTo, 'Want to See More?');
      return JVB()->email()->grid($output, 3, 'New from '.$title,'',$final);
      $final = Emails::getInstance()->button($goTo, 'Want to See More?');
      return Emails::getInstance()->grid($output, 3, 'New from '.$title,'',$final);
   }
   protected function getTermUpdates(int $termID, string $type, string $frequency):string|false
@@ -373,17 +374,17 @@
         $image = sprintf(
            '<a href="%s">%s</a>',
            $url,
            JVB()->email()->image($image[0], get_post_meta($img, '_wp_attachment_image_alt', true))
            Emails::getInstance()->image($image[0], get_post_meta($img, '_wp_attachment_image_alt', true))
         );
         $t = sprintf(
            '<a href="%s">%s</a>',
            $url,
            $m->get('post_title')
         );
         $output[] = JVB()->email()->card($image, $t);
         $output[] = Emails::getInstance()->card($image, $t);
      }
      $final = JVB()->email()->button($goTo, 'See More');
      return JVB()->email()->grid($output, 3, 'New in '.$title, '', $final);
      $final = Emails::getInstance()->button($goTo, 'See More');
      return Emails::getInstance()->grid($output, 3, 'New in '.$title, '', $final);
   }
}