<?php declare(strict_types=1); namespace Xentral\Modules\TimeManagement\Data; final class WorkDayData { /** @var bool $isMondayWorkDay */ private $isMondayWorkDay = false; /** @var bool $isTuesdayWorkDay */ private $isTuesdayWorkDay = false; /** @var bool $isWednesdayWorkDay */ private $isWednesdayWorkDay = false; /** @var bool $isThursdayWorkDay */ private $isThursdayWorkDay = false; /** @var bool $isFridayWorkDay */ private $isFridayWorkDay = false; /** @var bool $isSaturdayWorkDay */ private $isSaturdayWorkDay = false; /** @var bool $isSundayWorkDay */ private $isSundayWorkDay = false; private function __construct() { } public static function fromDbState(array $data): WorkDayData { $workDayData = new WorkDayData(); $workDayData->isMondayWorkDay = !empty($data['is_monday_workday']); $workDayData->isTuesdayWorkDay = !empty($data['is_tuesday_workday']); $workDayData->isWednesdayWorkDay = !empty($data['is_wednesday_workday']); $workDayData->isThursdayWorkDay = !empty($data['is_thursday_workday']); $workDayData->isFridayWorkDay = !empty($data['is_friday_workday']); $workDayData->isSaturdayWorkDay = !empty($data['is_saturday_workday']); $workDayData->isSundayWorkDay = !empty($data['is_sunday_workday']); return $workDayData; } /** * @return bool */ public function isMondayWorkDay(): bool { return $this->isMondayWorkDay; } /** * @return bool */ public function isTuesdayWorkDay(): bool { return $this->isTuesdayWorkDay; } /** * @return bool */ public function isWednesdayWorkDay(): bool { return $this->isWednesdayWorkDay; } /** * @return bool */ public function isThursdayWorkDay(): bool { return $this->isThursdayWorkDay; } /** * @return bool */ public function isFridayWorkDay(): bool { return $this->isFridayWorkDay; } /** * @return bool */ public function isSaturdayWorkDay(): bool { return $this->isSaturdayWorkDay; } /** * @return bool */ public function isSundayWorkDay(): bool { return $this->isSundayWorkDay; } }