Jake Vanderwerf
2026-08-28 a9654f00c8fbc9934289d761843ddd071025013f
inc/managers/SEO/render/Thing/Intangible/Enumeration/DayOfWeek.php
@@ -1,17 +1,12 @@
<?php
namespace JVBase\managers\SEO\render\Thing\Intangible\Enumeration;
use JVBase\managers\SEO\render\Thing\Intangible\Schedule;
use JVBase\managers\SEO\render\Thing\Intangible\StructuredValue\OpeningHoursSpecification;
use JVBase\managers\SEO\render\Thing\Intangible\StructuredValue\ServicePeriod;
use JVBase\managers\SEO\render\Thing\Thing;
if (!defined('ABSPATH')) {
   exit;
}
class DayOfWeek extends Enumeration {
   protected string $day;
   protected string|array $day;
   protected array $allowedDay = [
      'monday' => 'https://schema.org/Monday',
      'tuesday'   => 'https://schema.org/Tuesday',
@@ -22,4 +17,21 @@
      'sunday' => 'https://schema.org/Sunday',
      'publicHolidays' => 'https://schema.org/PublicHolidays'
   ];
   public function setDay(array|string $day) {
      if (!is_array($day)) {
         $day = [$day];
      }
      $day = array_filter($day, function($d) {
         if (!array_key_exists(strtolower($d), $this->allowedDay)) {
            error_log('Invalid day attempted: '.$d);
            return false;
         }
         return true;
      });
      if (empty($day)) {
         return;
      }
      $this->day = count($day) === 1 ? $day[0] : $day;
   }
}