1c3437056SNickeau<?php 2c3437056SNickeau 3c3437056SNickeau 4c3437056SNickeaunamespace ComboStrap; 5c3437056SNickeau 6c3437056SNickeau 7*04fd306cSNickeauuse ComboStrap\Meta\Api\Metadata; 8*04fd306cSNickeauuse ComboStrap\Meta\Api\MetadataDateTime; 9*04fd306cSNickeau 10c3437056SNickeauclass StartDate extends MetadataDateTime 11c3437056SNickeau{ 12c3437056SNickeau 13c3437056SNickeau public const PROPERTY_NAME = "date_start"; 14c3437056SNickeau 15*04fd306cSNickeau public static function createFromPage(MarkupPath $page) 16c3437056SNickeau { 17c3437056SNickeau return (new StartDate()) 18c3437056SNickeau ->setResource($page); 19c3437056SNickeau } 20c3437056SNickeau 21*04fd306cSNickeau static public function getTab(): string 22c3437056SNickeau { 23c3437056SNickeau return MetaManagerForm::TAB_TYPE_VALUE; 24c3437056SNickeau } 25c3437056SNickeau 26*04fd306cSNickeau static public function getDescription(): string 27c3437056SNickeau { 28c3437056SNickeau return "The start date of an event"; 29c3437056SNickeau } 30c3437056SNickeau 31*04fd306cSNickeau static public function getLabel(): string 32c3437056SNickeau { 33c3437056SNickeau return "Start Date"; 34c3437056SNickeau } 35c3437056SNickeau 36c3437056SNickeau static public function getName(): string 37c3437056SNickeau { 38c3437056SNickeau return self::PROPERTY_NAME; 39c3437056SNickeau } 40c3437056SNickeau 41*04fd306cSNickeau static public function getPersistenceType(): string 42c3437056SNickeau { 43c3437056SNickeau return Metadata::PERSISTENT_METADATA; 44c3437056SNickeau } 45c3437056SNickeau 46*04fd306cSNickeau static public function isMutable(): bool 47c3437056SNickeau { 48c3437056SNickeau return true; 49c3437056SNickeau } 50c3437056SNickeau 51c3437056SNickeau public function getDefaultValue() 52c3437056SNickeau { 53*04fd306cSNickeau throw new ExceptionNotFound("Start date does not have any default value"); 54c3437056SNickeau } 55c3437056SNickeau 56*04fd306cSNickeau static public function getCanonical(): string 57c3437056SNickeau { 58c3437056SNickeau return PageType::EVENT_TYPE; 59c3437056SNickeau } 60c3437056SNickeau 61c3437056SNickeau 62*04fd306cSNickeau static public function isOnForm(): bool 63*04fd306cSNickeau { 64*04fd306cSNickeau return true; 65*04fd306cSNickeau } 66c3437056SNickeau} 67