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\Contacts;
9:
10: use Aurora\System\SettingsProperty;
11:
12: /**
13: * @property bool $Disabled
14: * @property int $ContactsPerPage
15: * @property string $ImportContactsLink
16: * @property bool $AllowAddressBooksManagement
17: * @property bool $AllowEditTeamContactsByTenantAdmins
18: * @property array $ContactsSortBy
19: */
20:
21: class Settings extends \Aurora\System\Module\Settings
22: {
23: protected function initDefaults()
24: {
25: $this->aContainer = [
26: "Disabled" => new SettingsProperty(
27: false,
28: "bool",
29: null,
30: "Setting to true disables the module",
31: ),
32: "ContactsPerPage" => new SettingsProperty(
33: 20,
34: "int",
35: null,
36: "Number of contacts displayer ped page",
37: ),
38: "ImportContactsLink" => new SettingsProperty(
39: "",
40: "string",
41: null,
42: "URL of documentation page that explains structure of CSV files used",
43: ),
44: "AllowAddressBooksManagement" => new SettingsProperty(
45: false,
46: "bool",
47: null,
48: "Setting to true enables managing multiple address books",
49: ),
50: "AllowEditTeamContactsByTenantAdmins" => new SettingsProperty(
51: false,
52: "bool",
53: null,
54: "Setting to true allows tenant admin to edit Team address book entries",
55: ),
56: "ContactsSortBy" => new SettingsProperty(
57: [
58: "Allow" => false,
59: "DisplayOptions" => [
60: "Name",
61: "Email",
62: ],
63: "DefaultSortBy" => "Name",
64: "DefaultSortOrder" => "Asc",
65: ],
66: "array",
67: null,
68: "Defines a set of rules for sorting contacts. Name|Email|Frequency|FirstName|LastName. DefaultSortOrder - Asc|Desc",
69: ),
70: ];
71: }
72: }
73: