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