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\StandardResetPassword;
9:
10: use Aurora\System\SettingsProperty;
11:
12: /**
13: * @property bool $Disabled
14: * @property bool $IncludeInMobile
15: * @property string $HashModuleName
16: * @property int $RecoveryLinkLifetimeMinutes
17: * @property string $NotificationType
18: * @property string $NotificationEmail
19: * @property string $NotificationHost
20: * @property int $NotificationPort
21: * @property string $NotificationSMTPSecure
22: * @property bool $NotificationUseAuth
23: * @property string $NotificationLogin
24: * @property string $NotificationPassword
25: * @property string $CustomLogoUrl
26: * @property string $BottomInfoHtmlText
27: */
28:
29: class Settings extends \Aurora\System\Module\Settings
30: {
31: protected function initDefaults()
32: {
33: $this->aContainer = [
34: "Disabled" => new SettingsProperty(
35: false,
36: "bool",
37: null,
38: "Setting to true disables the module",
39: ),
40: "IncludeInMobile" => new SettingsProperty(
41: true,
42: "bool",
43: null,
44: "If true, the module is used in mobile version of the interface",
45: ),
46: "HashModuleName" => new SettingsProperty(
47: "reset-password",
48: "string",
49: null,
50: "Defines URL hash used by the module",
51: ),
52: "RecoveryLinkLifetimeMinutes" => new SettingsProperty(
53: 15,
54: "int",
55: null,
56: "Defines lifetime of password reset link, in minutes",
57: ),
58: "NotificationType" => new SettingsProperty(
59: "mail",
60: "string",
61: null,
62: "Denotes how the mail is sent - mail for standard mail() function of PHP, smtp for sending via SMTP protocol",
63: ),
64: "NotificationEmail" => new SettingsProperty(
65: "",
66: "string",
67: null,
68: "Sender email address used in mail messages sent by this module",
69: ),
70: "NotificationHost" => new SettingsProperty(
71: "",
72: "string",
73: null,
74: "SMTP server host used for sending mail by this module",
75: ),
76: "NotificationPort" => new SettingsProperty(
77: 25,
78: "int",
79: null,
80: "SMTP server port number",
81: ),
82: "NotificationSMTPSecure" => new SettingsProperty(
83: "",
84: "string",
85: null,
86: "Set to 'ssl' or 'tls' to use SSL or STARTTLS respectively",
87: ),
88: "NotificationUseAuth" => new SettingsProperty(
89: false,
90: "bool",
91: null,
92: "If true, SMTP authentication is used to connect to SMTP server",
93: ),
94: "NotificationLogin" => new SettingsProperty(
95: "",
96: "string",
97: null,
98: "Username used to authenticate on SMTP server",
99: ),
100: "NotificationPassword" => new SettingsProperty(
101: "",
102: "string",
103: null,
104: "Password used to authenticate on SMTP server",
105: ),
106: "CustomLogoUrl" => new SettingsProperty(
107: "",
108: "string",
109: null,
110: "Defines URL of logo image used on password reset page",
111: ),
112: "BottomInfoHtmlText" => new SettingsProperty(
113: "",
114: "string",
115: null,
116: "Defines bottom text message shown on password reset page",
117: ),
118: ];
119: }
120: }
121: