1: <?php
2:
3: namespace Charcoal\Cms;
4:
5: // dependencies from `charcoal-base`
6: use Charcoal\Object\Content;
7:
8: /**
9: * Class Config
10: */
11: class Config extends Content
12: {
13: /**
14: * @var string $defaultMetaTitle
15: */
16: protected $defaultMetaTitle;
17:
18: /**
19: * @var string $defaultMetaDescription
20: */
21: protected $defaultMetaDescription;
22:
23: /**
24: * @var string $defaultMetaImage
25: */
26: protected $defaultMetaImage;
27:
28: /**
29: * @var string $defaultMetaUrl
30: */
31: protected $defaultMetaUrl;
32:
33: // ==========================================================================
34: // INIT
35: // ==========================================================================
36:
37: /**
38: * Section constructor.
39: * @param array $data The data.
40: */
41: public function __construct(array $data = null)
42: {
43: parent::__construct($data);
44:
45: if (is_callable([$this, 'defaultData'])) {
46: $this->setData($this->defaultData());
47: }
48: }
49:
50: // ==========================================================================
51: // SETTERS
52: // ==========================================================================
53:
54: /**
55: * @param mixed $defaultMetaTitle The default meta title.
56: * @return self
57: */
58: public function setDefaultMetaTitle($defaultMetaTitle)
59: {
60: $this->defaultMetaTitle = $this->translator()->translation($defaultMetaTitle);
61:
62: return $this;
63: }
64:
65: /**
66: * @param mixed $defaultMetaDescription The default meta description.
67: * @return self
68: */
69: public function setDefaultMetaDescription($defaultMetaDescription)
70: {
71: $this->defaultMetaDescription = $this->translator()->translation($defaultMetaDescription);
72:
73: return $this;
74: }
75:
76: /**
77: * @param mixed $defaultMetaImage The default meta image.
78: * @return self
79: */
80: public function setDefaultMetaImage($defaultMetaImage)
81: {
82: $this->defaultMetaImage = $defaultMetaImage;
83:
84: return $this;
85: }
86:
87: /**
88: * @param mixed $defaultMetaUrl The default meta url.
89: * @return self
90: */
91: public function setDefaultMetaUrl($defaultMetaUrl)
92: {
93: $this->defaultMetaUrl = $this->translator()->translation($defaultMetaUrl);
94:
95: return $this;
96: }
97:
98: // ==========================================================================
99: // GETTERS
100: // ==========================================================================
101:
102: /**
103: * @return mixed
104: */
105: public function defaultMetaTitle()
106: {
107: return $this->defaultMetaTitle;
108: }
109:
110: /**
111: * @return mixed
112: */
113: public function defaultMetaDescription()
114: {
115: return $this->defaultMetaDescription;
116: }
117:
118: /**
119: * @return mixed
120: */
121: public function defaultMetaImage()
122: {
123: return $this->defaultMetaImage;
124: }
125:
126: /**
127: * @return mixed
128: */
129: public function defaultMetaUrl()
130: {
131: return $this->defaultMetaUrl;
132: }
133: }
134: