1: <?php
2: /**
3: * This code is licensed under AGPLv3 license or Afterlogic Software License
4: * if commercial version of the product was purchased.
5: * For full statements of the licenses see LICENSE-AFTERLOGIC and LICENSE-AGPL3 files.
6: */
7:
8: namespace Aurora\Modules\Calendar;
9:
10: use Aurora\System\SettingsProperty;
11:
12: /**
13: * @property bool $Disabled
14: * @property bool $AddDescriptionToTitle
15: * @property bool $AllowTasks
16: * @property bool $AllowShare
17: * @property int $DefaultTab
18: * @property bool $HighlightWorkingDays
19: * @property bool $HighlightWorkingHours
20: * @property int $WeekStartsOn
21: * @property int $WorkdayEnds
22: * @property int $WorkdayStarts
23: * @property bool $AllowPrivateEvents
24: * @property bool $AllowDefaultReminders
25: * @property bool $AllowSubscribedCalendars
26: * @property array $CalendarColors
27: * @property bool $ShowWeekNumbers
28: * @property bool $ShowTasksInCalendars
29: */
30:
31: class Settings extends \Aurora\System\Module\Settings
32: {
33: protected function initDefaults()
34: {
35: $this->aContainer = [
36: "Disabled" => new SettingsProperty(
37: false,
38: "bool",
39: null,
40: "Setting to true disables the module",
41: ),
42: "AddDescriptionToTitle" => new SettingsProperty(
43: false,
44: "bool",
45: null,
46: "If set to true, both title and description will be displayed for event in calendar grid",
47: ),
48: "AllowTasks" => new SettingsProperty(
49: false,
50: "bool",
51: null,
52: "Setting to true enables tasks-related features such as converting event to task and back",
53: ),
54: "AllowShare" => new SettingsProperty(
55: true,
56: "bool",
57: null,
58: "Setting to true enables calendar sharing capabilities (Aurora Corporate only)",
59: ),
60: "DefaultTab" => new SettingsProperty(
61: 3,
62: "int",
63: null,
64: "Defines default calendar tab. All the settings starting from this one are applied to new accounts, and can be adjust by users in their settings.",
65: ),
66: "HighlightWorkingDays" => new SettingsProperty(
67: true,
68: "bool",
69: null,
70: "If true, 'Highlight working days' option is enabled",
71: ),
72: "HighlightWorkingHours" => new SettingsProperty(
73: true,
74: "bool",
75: null,
76: "If true, 'Highlight working hours' option is enabled",
77: ),
78: "WeekStartsOn" => new SettingsProperty(
79: 0,
80: "int",
81: null,
82: "Defines first day of the week: 0 - Sunday, 1 - Monday, 6 - Saturday",
83: ),
84: "WorkdayEnds" => new SettingsProperty(
85: 18,
86: "int",
87: null,
88: "Defines workday end time",
89: ),
90: "WorkdayStarts" => new SettingsProperty(
91: 9,
92: "int",
93: null,
94: "Defines workday start time",
95: ),
96: "AllowPrivateEvents" => new SettingsProperty(
97: false,
98: "bool",
99: null,
100: "Setting to true enables private events features",
101: ),
102: "AllowDefaultReminders" => new SettingsProperty(
103: false,
104: "bool",
105: null,
106: "Setting to true enables default reminders features",
107: ),
108: "AllowSubscribedCalendars" => new SettingsProperty(
109: false,
110: "bool",
111: null,
112: "Setting to true enables external calendars features",
113: ),
114: "CalendarColors" => new SettingsProperty(
115: [
116: '#f09650',
117: '#f68987',
118: '#6fd0ce',
119: '#8fbce2',
120: '#b9a4f5',
121: '#f68dcf',
122: '#d88adc',
123: '#4afdb4',
124: '#9da1ff',
125: '#5cc9c9',
126: '#77ca71',
127: '#aec9c9',
128: '#000'
129: ],
130: "array",
131: null,
132: "",
133: ),
134: "ShowWeekNumbers" => new SettingsProperty(
135: false,
136: "bool",
137: null,
138: "Setting to true will make the system display week numbers in calendar-related dates",
139: ),
140: "ShowTasksInCalendars" => new SettingsProperty(
141: true,
142: "bool",
143: null,
144: "Setting to true enables display tasks in calendars",
145: ),
146: ];
147: }
148: }
149: