Jake Vanderwerf
3 days ago ba1e1ccf869b818f7a7a897264dfea05563a7796
inc/managers/DashboardManager.php
@@ -25,7 +25,11 @@
    public function __construct()
    {
        $this->cache = Cache::for('dashboard', WEEK_IN_SECONDS)->connect('user');
        $this->cache = Cache::for('dashboard', WEEK_IN_SECONDS)->connect('user')->user();
      if (JVB_TESTING) {
         $this->cache->flush();
      }
        add_action('init', [$this, 'registerDashboard']);
        $this->user = wp_get_current_user();
@@ -41,11 +45,12 @@
      jvb_register_do_once('buildDashboard', [$this, 'activate']);
      add_filter('the_seo_framework_sitemap_exclude_ids', [$this, 'excludeDashboard'], 10, 1);
      add_filter('the_seo_framework_sitemap_exclude_ids', [$this, 'excludeDashboard'], 8, 1);
    }
   public function excludeDashboard(array $ids):array {
      $cached = $this->cache->remember(
   public function excludeDashboard(array $IDs):array {
      $this->cache->flush();
      $exclude = $this->cache->remember(
         'dashboardIDs',
         function() {
            return get_posts([
@@ -54,7 +59,11 @@
               'fields' => 'ids',
            ]);
         });
      return array_merge($ids, $cached);
      if (!empty($exclude)) {
         $IDs = array_merge($IDs, $exclude);
      }
      return $IDs;
   }
    /**
@@ -379,7 +388,7 @@
   }
   protected function renderDashboard(string $page):string
   {
      ob_start();
//    ob_start();
      jvbInlineStyles('nav');
      jvbInlineStyles('dash');
      jvbInlineStyles('forms');
@@ -395,7 +404,8 @@
      );
      $this->renderFooter();
      return ob_get_clean();
//    return ob_get_clean();
return '';
//    $integrationSlugs = array_map(function($name) {
//       return sanitize_title(str_replace('_', '-', $name));
//    }, array_keys(JVB()->getAvailableServices(false)));
@@ -631,7 +641,10 @@
            }
         }
         return $icon;
         return match($icon) {
            'favourites'   => 'heart',
            default => $icon
         };
      });
   }
   protected function getSlug(string $slug, string $page):string
@@ -704,9 +717,9 @@
      <?php
      $menu = new Navigation('sidebar');
      $menuClasses = ['col', 'a-start', 'nowrap'];
      $menuClasses = ['left'];
      $itemClasses = ['col'];
      $menu->addClass('col a-start')->hasToggle()->defaultMenuClasses($menuClasses);
      $menu->addClass('sidebar left')->hasToggle()->defaultMenuClasses($menuClasses);
      $menu->defaultItemClasses($itemClasses);
      $pages = $this->getUserAllowedPages()?:[];
      //Dashboard
@@ -734,7 +747,7 @@
         //content types
      $all = array_merge(
         Registrar::getRegistered('post'),
         Registrar::getFeatured('is_content', 'term')
         Registrar::withFeature('is_content', 'term')
      );
      $availableContent = array_filter($pages, function($page, $key) use($all) {
         return !is_numeric($key) && in_array($key, $all) && JVB()->roles()->checkRole($this->user, $key);
@@ -1005,7 +1018,7 @@
    {
        ?>
        <div class="approvals container">
            <nav class="tabs row start" role="tablist">
            <nav class="tabs row left" role="tablist">
                <button type="button" class="tab active" data-tab="summary" role="tab" aria-selected="true">
                   <?= jvbDashIcon('infinity')?>All
                </button>
@@ -1077,11 +1090,11 @@
      }
      ob_start();
        ?>
        <nav class="tabs row start" role="tablist">
        <nav class="tabs row left" role="tablist">
        <?php
        $i=1;
        $content = Registrar::getRegistered('post');
        $contentTax = Registrar::getFeatured('is_content', 'term');
        $contentTax = Registrar::withFeature('is_content', 'term');
        $taxonomies = Registrar::getRegistered('term');
        foreach($contentTax as $index => $tax) {
            unset($taxonomies[$index]);
@@ -1274,7 +1287,7 @@
            $pages[] = 'Favourites';
         }
         if (!empty(Registrar::getFeatured('karma'))) {
         if (!empty(Registrar::withFeature('karma'))) {
            $pages[] = 'Karmic Score';
         }
@@ -1441,7 +1454,7 @@
                     foreach ($roles as $role) {
                        $contents = Registrar::getInstance($role)?->getCreatable();
                        if (!empty($contents)) {
                           $hasKarma = Registrar::getFeatured('karma');
                           $hasKarma = Registrar::withFeature('karma');
                           $remove = empty(array_intersect($contents, $hasKarma));
                        }
                     }
@@ -1502,7 +1515,7 @@
    */
   protected function getRolesWithDashboard():array
   {
      return Registrar::getFeatured('has_dashboard', 'user');
      return Registrar::withFeature('has_dashboard', 'user');
   }
   /**