1<?php
2
3
4namespace ComboStrap;
5
6
7class PageLayout extends MetadataText
8{
9
10    public const PROPERTY_NAME = "layout";
11    public const HOLY_LAYOUT_VALUE = "holy";
12    public const MEDIAN_LAYOUT_VALUE = "median";
13    public const LANDING_LAYOUT_VALUE = "landing";
14
15    public static function createFromPage(Page $page)
16    {
17        return (new PageLayout())
18            ->setResource($page);
19    }
20
21    public function getTab(): string
22    {
23        return MetaManagerForm::TAB_PAGE_VALUE;
24    }
25
26    public function getDescription(): string
27    {
28        return "A layout chooses the layout of your page (such as the slots and placement of the main content)";
29    }
30
31    public function getLabel(): string
32    {
33        return "Page Layout";
34    }
35
36    public function getPossibleValues(): ?array
37    {
38        return [self::HOLY_LAYOUT_VALUE, self::MEDIAN_LAYOUT_VALUE, self::LANDING_LAYOUT_VALUE];
39    }
40
41
42    static public function getName(): string
43    {
44        return self::PROPERTY_NAME;
45    }
46
47    public function getPersistenceType(): string
48    {
49        return Metadata::PERSISTENT_METADATA;
50    }
51
52    public function getMutable(): bool
53    {
54        return true;
55    }
56
57    public function getDefaultValue(): string
58    {
59        return self::HOLY_LAYOUT_VALUE;
60    }
61
62    public function getCanonical(): string
63    {
64        return self::PROPERTY_NAME;
65    }
66
67
68}
69