Jake Vanderwerf
5 days ago 0dfe1d8afafc59c4a5559c498342668d5a58d6ef
inc/admin/SEOAdmin.php
@@ -1,8 +1,8 @@
<?php
namespace JVBase\admin;
use JVBase\base\SchemaHelper;
use JVBase\meta\Form;
use JVBase\meta\Sanitizer;
use JVBase\registrar\Registrar;
use JVBase\ui\Tabs;
@@ -29,7 +29,7 @@
      'JVBase\managers\SEO\render\Thing\CreativeWork\WebPage\Webpage'      => ' - - WebPage',
      'JVBase\managers\SEO\render\Thing\CreativeWork\WebPage\AboutPage' => ' - - - About Page',
      'JVBase\managers\SEO\render\Thing\CreativeWork\WebPage\CheckoutPage' => ' - - - Checkout Page',
      'JVBase\managers\SEO\render\Thing\CreativeWork\WebPage\CollectionPage'  => ' - - - Collection Page',
      'JVBase\inc\managers\SEO\render\Thing\CreativeWork\WebPage\CollectionPage\CollectionPage' => ' - - - Collection Page',
      'JVBase\managers\SEO\render\Thing\CreativeWork\WebPage\ContactPage'     => ' - - - Contact Page',
      'JVBase\managers\SEO\render\Thing\CreativeWork\WebPage\FAQPage'         => ' - - - FAQ Page',
      'JVBase\managers\SEO\render\Thing\CreativeWork\WebPage\ItemPage'     => ' - - - Item Page',
@@ -108,7 +108,8 @@
   public function __construct()
   {
      $this->setChecks();
      add_filter('jvbDashboardPage', [$this, 'addDashboardSection'], 20, 2);
      add_action(BASE.'dashboard_page_seo', [$this, 'addDashboardSection'], 10);
      add_action('admin_menu', [$this, 'addAdminMenu']);
      $this->addFormListeners();
   }
@@ -144,14 +145,9 @@
      );
   }
   public function addDashboardSection(string $content, string $page):string
   public function addDashboardSection():void
   {
      if ($page !== 'jvb-seo') {
         return $content;
      }
      ob_start();
      $this->renderAdminPage();
      return ob_get_clean();
   }
   public function renderAdminPage(bool $outputScripts = true):void
@@ -204,8 +200,12 @@
         $this->renderStyles();
      }
   }
      private function renderStyles(): void
      {
         jvbInlineStyles('forms');
      }
   public function renderProperty(string $property, ?string $value, mixed $class):void
   public function renderProperty(string $property, mixed $value, mixed $class):void
   {
      $method = 'get'.ucFirst($property).'FieldConfig';
      $config = method_exists($class, $method) ? $class->$method() : $this->buildConfig($property);
@@ -251,7 +251,8 @@
      $this->formStart('website');
      $default = 'JVBase\managers\SEO\render\Thing\CreativeWork\WebSite';
//    $this->renderSchemaTypeSelection($value);
      $stored = get_option(BASE.'WebsiteSchema',apply_filters(BASE.'websiteSchema', []));
      $stored = SchemaHelper::schema('website');
      $this->renderFieldsFor($default, $stored);
      $this->formEnd();
      return ob_get_clean();
@@ -263,7 +264,8 @@
      $default = apply_filters(BASE.'OrganizationSchemaType', 'JVBase\managers\SEO\render\Thing\Organization\Organization');
      $value = get_option(BASE.'OrganizationSchemaType', $default);
      $this->renderSchemaTypeSelection($value);
      $stored = get_option(BASE.'OrganizationSchema',apply_filters(BASE.'OrganizationSchema', []));
      $stored = SchemaHelper::schema('organization');
      $this->renderFieldsFor($value, $stored);
      $this->formEnd();
      return ob_get_clean();