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