xref: /template/strap/ComboStrap/StartDate.php (revision 04fd306c7c155fa133ebb3669986875d65988276)
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