Merge pull request #19063 from christianwach/lab-core-2213
[civicrm-core.git] / settings / Mailing.setting.php
CommitLineData
6a488035
TO
1<?php
2/*
3 +--------------------------------------------------------------------+
6b7eb9df 4 | Copyright CiviCRM LLC. All rights reserved. |
6a488035 5 | |
6b7eb9df
TO
6 | This work is published under the GNU AGPLv3 license with some |
7 | permitted exceptions and without any warranty. For full license |
8 | and copyright information, see https://civicrm.org/licensing |
6a488035 9 +--------------------------------------------------------------------+
d25dd0ee 10 */
6a488035
TO
11
12/**
13 *
14 * @package CRM
ca5cec67 15 * @copyright CiviCRM LLC https://civicrm.org/licensing
6a488035
TO
16 */
17/*
18 * Settings metadata file
19 */
20
dfe1f88a
CW
21return [
22 'profile_double_optin' => [
6a488035
TO
23 'group_name' => 'Mailing Preferences',
24 'group' => 'mailing',
25 'name' => 'profile_double_optin',
74f89a9f 26 'type' => 'Boolean',
6a488035 27 'html_type' => 'checkbox',
007e3bdc 28 'default' => '1',
6a488035 29 'add' => '4.1',
74f89a9f 30 'title' => ts('Enable Double Opt-in for Profile Group(s) field'),
6a488035
TO
31 'is_domain' => 1,
32 'is_contact' => 0,
74f89a9f 33 'description' => ts('When CiviMail is enabled, users who "subscribe" to a group from a profile Group(s) checkbox will receive a confirmation email. They must respond (opt-in) before they are added to the group.'),
08e57c58 34 'help_text' => NULL,
dfe1f88a
CW
35 ],
36 'track_civimail_replies' => [
6a488035
TO
37 'group_name' => 'Mailing Preferences',
38 'group' => 'mailing',
39 'name' => 'track_civimail_replies',
74f89a9f 40 'type' => 'Boolean',
6a488035 41 'html_type' => 'checkbox',
007e3bdc 42 'default' => '0',
6a488035 43 'add' => '4.1',
74f89a9f 44 'title' => ts('Track replies using VERP in Reply-To header'),
6a488035
TO
45 'is_domain' => 1,
46 'is_contact' => 0,
8d2e8579 47 'description' => ts('If checked, mailings will default to tracking replies using VERP-ed Reply-To.'),
08e57c58 48 'help_text' => NULL,
6a488035 49 'validate_callback' => 'CRM_Core_BAO_Setting::validateBoolSetting',
dfe1f88a
CW
50 ],
51 'civimail_workflow' => [
6a488035
TO
52 'group_name' => 'Mailing Preferences',
53 'group' => 'mailing',
54 'name' => 'civimail_workflow',
74f89a9f 55 'type' => 'Boolean',
6a488035 56 'html_type' => 'checkbox',
007e3bdc 57 'default' => '0',
6a488035 58 'add' => '4.1',
74f89a9f 59 'title' => ts('Enable workflow support for CiviMail'),
6a488035
TO
60 'is_domain' => 1,
61 'is_contact' => 0,
74f89a9f 62 'description' => ts('Drupal-only. Rules module must be enabled (beta feature - use with caution).'),
08e57c58 63 'help_text' => NULL,
dfe1f88a
CW
64 ],
65 'civimail_server_wide_lock' => [
6a488035
TO
66 'group_name' => 'Mailing Preferences',
67 'group' => 'mailing',
68 'name' => 'civimail_server_wide_lock',
74f89a9f 69 'type' => 'Boolean',
6a488035 70 'html_type' => 'checkbox',
007e3bdc 71 'default' => '0',
6a488035 72 'add' => '4.1',
74f89a9f 73 'title' => ts('Enable global server wide lock for CiviMail'),
6a488035
TO
74 'is_domain' => 1,
75 'is_contact' => 0,
08e57c58 76 'help_text' => NULL,
dfe1f88a
CW
77 ],
78 'replyTo' => [
6098a966
TO
79 'group_name' => 'Mailing Preferences',
80 'group' => 'mailing',
81 'name' => 'replyTo',
82 'type' => 'Boolean',
83 'quick_form_type' => 'YesNo',
84 'default' => 0,
85 'add' => '4.6',
8d2e8579 86 'title' => ts('Enable Custom Reply-To'),
6098a966
TO
87 'is_domain' => 1,
88 'is_contact' => 0,
8d2e8579 89 'description' => ts('Allow CiviMail users to send mailings with a custom Reply-To header.'),
6098a966 90 'help_text' => NULL,
dfe1f88a
CW
91 ],
92 'mailing_backend' => [
6a488035
TO
93 'group_name' => 'Mailing Preferences',
94 'group' => 'mailing',
95 'name' => 'mailing_backend',
96 'type' => 'Array',
97 'html_type' => 'checkbox',
dfe1f88a 98 'default' => ['outBound_option' => '3'],
6a488035 99 'add' => '4.1',
8d2e8579 100 'title' => ts('Mailing Backend'),
6a488035
TO
101 'is_domain' => 1,
102 'is_contact' => 0,
08e57c58 103 'help_text' => NULL,
dfe1f88a
CW
104 ],
105 'profile_add_to_group_double_optin' => [
6a488035
TO
106 'group_name' => 'Mailing Preferences',
107 'group' => 'mailing',
108 'name' => 'profile_add_to_group_double_optin',
74f89a9f 109 'type' => 'Boolean',
6a488035 110 'html_type' => 'checkbox',
007e3bdc 111 'default' => '0',
6a488035 112 'add' => '4.1',
0dd00ae1 113 'title' => ts('Enable Double Opt-in for Profiles which use the "Add to Group" setting'),
6a488035
TO
114 'is_domain' => 1,
115 'is_contact' => 0,
0dd00ae1 116 'description' => ts('When CiviMail is enabled and a profile uses the "Add to Group" setting, users who complete the profile form will receive a confirmation email. They must respond (opt-in) before they are added to the group.'),
08e57c58 117 'help_text' => NULL,
dfe1f88a
CW
118 ],
119 'disable_mandatory_tokens_check' => [
9babb598
OB
120 'group_name' => 'Mailing Preferences',
121 'group' => 'mailing',
122 'name' => 'disable_mandatory_tokens_check',
74f89a9f 123 'type' => 'Boolean',
9babb598
OB
124 'html_type' => 'checkbox',
125 'default' => 0,
126 'add' => '4.4',
74f89a9f 127 'title' => ts('Disable check for mandatory tokens'),
9babb598
OB
128 'is_domain' => 1,
129 'is_contact' => 0,
74f89a9f 130 'description' => ts('Don\'t check for presence of mandatory tokens (domain address; unsubscribe/opt-out) before sending mailings. WARNING: Mandatory tokens are a safe-guard which facilitate compliance with the US CAN-SPAM Act. They should only be disabled if your organization adopts other mechanisms for compliance or if your organization is not subject to CAN-SPAM.'),
08e57c58 131 'help_text' => NULL,
dfe1f88a
CW
132 ],
133 'dedupe_email_default' => [
9d76357a
DG
134 'group_name' => 'Mailing Preferences',
135 'group' => 'mailing',
136 'name' => 'dedupe_email_default',
74f89a9f 137 'type' => 'Boolean',
9d76357a
DG
138 'html_type' => 'checkbox',
139 'default' => 1,
140 'add' => '4.5',
74f89a9f 141 'title' => ts('CiviMail dedupes e-mail addresses by default'),
9d76357a
DG
142 'is_domain' => 1,
143 'is_contact' => 0,
74f89a9f 144 'description' => ts('Set the "dedupe e-mail" option when sending a new mailing to "true" by default.'),
08e57c58 145 'help_text' => NULL,
dfe1f88a
CW
146 ],
147 'hash_mailing_url' => [
c57f36a1
PJ
148 'group_name' => 'Mailing Preferences',
149 'group' => 'mailing',
150 'name' => 'hash_mailing_url',
74f89a9f 151 'type' => 'Boolean',
c57f36a1
PJ
152 'html_type' => 'checkbox',
153 'default' => 0,
154 'add' => '4.5',
74f89a9f 155 'title' => ts('Hashed Mailing URL\'s'),
c57f36a1
PJ
156 'is_domain' => 1,
157 'is_contact' => 0,
8d2e8579 158 'description' => ts('If enabled, a randomized hash key will be used to reference the mailing URL in the mailing.viewUrl token, instead of the mailing ID.'),
08e57c58 159 'help_text' => NULL,
dfe1f88a
CW
160 ],
161 'civimail_multiple_bulk_emails' => [
84fb7424
TO
162 'group_name' => 'Mailing Preferences',
163 'group' => 'mailing',
164 'name' => 'civimail_multiple_bulk_emails',
74f89a9f 165 'type' => 'Boolean',
84fb7424
TO
166 'html_type' => 'checkbox',
167 'default' => 0,
168 'add' => '4.5',
74f89a9f 169 'title' => ts('Enable multiple bulk email address for a contact.'),
84fb7424
TO
170 'is_domain' => 1,
171 'is_contact' => 0,
38056b36 172 'description' => ts('CiviMail will deliver a copy of the email to each bulk email listed for the contact. Enabling this setting will also change the options for the "Email on Hold" field in Advanced Search.'),
84fb7424 173 'help_text' => NULL,
dfe1f88a
CW
174 ],
175 'include_message_id' => [
89595c92
TO
176 'group_name' => 'Mailing Preferences',
177 'group' => 'mailing',
178 'name' => 'include_message_id',
74f89a9f 179 'type' => 'Boolean',
89595c92
TO
180 'html_type' => 'checkbox',
181 'default' => FALSE,
182 'add' => '4.5',
74f89a9f 183 'title' => ts('Enable CiviMail to generate Message-ID header'),
89595c92
TO
184 'is_domain' => 1,
185 'is_contact' => 0,
89595c92 186 'help_text' => NULL,
dfe1f88a
CW
187 ],
188 'mailerBatchLimit' => [
988689cc
TO
189 'group_name' => 'Mailing Preferences',
190 'group' => 'mailing',
191 'name' => 'mailerBatchLimit',
192 'type' => 'Integer',
193 'quick_form_type' => 'Element',
194 'html_type' => 'text',
dfe1f88a 195 'html_attributes' => [
988689cc
TO
196 'size' => 4,
197 'maxlength' => 8,
dfe1f88a 198 ],
988689cc
TO
199 'default' => 0,
200 'add' => '4.7',
8d2e8579 201 'title' => ts('Mailer Batch Limit'),
988689cc
TO
202 'is_domain' => 1,
203 'is_contact' => 0,
8d2e8579 204 'description' => ts('Throttle email delivery by setting the maximum number of emails sent during each CiviMail run (0 = unlimited).'),
988689cc 205 'help_text' => NULL,
dfe1f88a
CW
206 ],
207 'mailerJobSize' => [
988689cc
TO
208 'group_name' => 'Mailing Preferences',
209 'group' => 'mailing',
210 'name' => 'mailerJobSize',
211 'type' => 'Integer',
212 'quick_form_type' => 'Element',
213 'html_type' => 'text',
dfe1f88a 214 'html_attributes' => [
988689cc
TO
215 'size' => 4,
216 'maxlength' => 8,
dfe1f88a 217 ],
988689cc
TO
218 'default' => 0,
219 'add' => '4.7',
8d2e8579 220 'title' => ts('Mailer Job Size'),
988689cc
TO
221 'is_domain' => 1,
222 'is_contact' => 0,
8d2e8579 223 'description' => ts('If you want to utilize multi-threading enter the size you want your sub jobs to be split into. Recommended values are between 1,000 and 10,000. Use a lower value if your server has multiple cron jobs running simultaneously, but do not use values smaller than 1,000. Enter "0" to disable multi-threading and process mail as one single job - batch limits still apply.'),
988689cc 224 'help_text' => NULL,
dfe1f88a
CW
225 ],
226 'mailerJobsMax' => [
988689cc
TO
227 'group_name' => 'Mailing Preferences',
228 'group' => 'mailing',
229 'name' => 'mailerJobsMax',
230 'type' => 'Integer',
231 'quick_form_type' => 'Element',
232 'html_type' => 'text',
dfe1f88a 233 'html_attributes' => [
988689cc
TO
234 'size' => 4,
235 'maxlength' => 8,
dfe1f88a 236 ],
988689cc
TO
237 'default' => 0,
238 'add' => '4.7',
8d2e8579 239 'title' => ts('Mailer Cron Job Limit'),
988689cc
TO
240 'is_domain' => 1,
241 'is_contact' => 0,
8d2e8579 242 'description' => ts('The maximum number of mailer delivery jobs executing simultaneously (0 = allow as many processes to execute as started by cron).'),
988689cc 243 'help_text' => NULL,
dfe1f88a
CW
244 ],
245 'mailThrottleTime' => [
988689cc
TO
246 'group_name' => 'Mailing Preferences',
247 'group' => 'mailing',
248 'name' => 'mailThrottleTime',
249 'type' => 'Integer',
250 'quick_form_type' => 'Element',
251 'html_type' => 'text',
dfe1f88a 252 'html_attributes' => [
988689cc
TO
253 'size' => 4,
254 'maxlength' => 8,
dfe1f88a 255 ],
988689cc
TO
256 'default' => 0,
257 'add' => '4.7',
8d2e8579 258 'title' => ts('Mailer Throttle Time'),
988689cc
TO
259 'is_domain' => 1,
260 'is_contact' => 0,
8d2e8579 261 'description' => ts('The time to sleep in between each e-mail in micro seconds. Setting this above 0 allows you to control the rate at which e-mail messages are sent to the mail server, avoiding filling up the mail queue very quickly. Set to 0 to disable.'),
988689cc 262 'help_text' => NULL,
dfe1f88a
CW
263 ],
264 'verpSeparator' => [
988689cc
TO
265 'group_name' => 'Mailing Preferences',
266 'group' => 'mailing',
267 'name' => 'verpSeparator',
268 'type' => 'String',
269 'quick_form_type' => 'Element',
270 'html_type' => 'text',
dfe1f88a 271 'html_attributes' => [
988689cc
TO
272 'size' => 4,
273 'maxlength' => 32,
dfe1f88a 274 ],
988689cc
TO
275 'default' => '.',
276 'add' => '4.7',
8d2e8579 277 'title' => ts('VERP Separator'),
988689cc
TO
278 'is_domain' => 1,
279 'is_contact' => 0,
8d2e8579 280 'description' => ts('Separator character used when CiviMail generates VERP (variable envelope return path) Mail-From addresses.'),
988689cc 281 'help_text' => NULL,
dfe1f88a
CW
282 ],
283 'write_activity_record' => [
007e3bdc
TO
284 'group_name' => 'Mailing Preferences',
285 'group' => 'mailing',
286 'name' => 'write_activity_record',
287 'type' => 'Boolean',
74f89a9f 288 'html_type' => 'checkbox',
289 'quick_form_type' => 'CheckBox',
007e3bdc
TO
290 'default' => '1',
291 'add' => '4.7',
74f89a9f 292 'title' => ts('Enable CiviMail to create activities on delivery'),
007e3bdc
TO
293 'is_domain' => 1,
294 'is_contact' => 0,
007e3bdc 295 'help_text' => NULL,
dfe1f88a
CW
296 ],
297 'simple_mail_limit' => [
eb523ccd 298 'group_name' => 'Mailing Preferences',
299 'group' => 'mailing',
300 'name' => 'simple_mail_limit',
301 'type' => 'Integer',
302 'quick_form_type' => 'Element',
303 'html_type' => 'text',
dfe1f88a 304 'html_attributes' => [
eb523ccd 305 'size' => 4,
306 'maxlength' => 8,
dfe1f88a 307 ],
eb523ccd 308 'default' => 50,
8d2e8579 309 'title' => ts('Simple mail limit'),
eb523ccd 310 'is_domain' => 1,
311 'is_contact' => 0,
8d2e8579 312 'description' => ts('The number of emails sendable via simple mail. Make sure you understand the implications for your spam reputation and legal requirements for bulk emails before editing. As there is some risk both to your spam reputation and the products if this is misused it is a hidden setting.'),
eb523ccd 313 'help_text' => 'CiviCRM forces users sending more than this number of mails to use CiviMails. CiviMails have additional precautions: not sending to contacts who do not want bulk mail, adding domain name and opt out links. You should familiarise yourself with the law relevant to you on bulk mailings if changing this setting. For the US https://en.wikipedia.org/wiki/CAN-SPAM_Act_of_2003 is a good place to start.',
dfe1f88a
CW
314 ],
315 'auto_recipient_rebuild' => [
05752ee5 316 'group_name' => 'Mailing Preferences',
317 'group' => 'mailing',
318 'name' => 'auto_recipient_rebuild',
319 'type' => 'Boolean',
74f89a9f 320 'html_type' => 'checkbox',
321 'quick_form_type' => 'CheckBox',
05752ee5 322 'default' => '1',
74f89a9f 323 'title' => ts('Enable automatic CiviMail recipient count display'),
05752ee5 324 'is_domain' => 1,
325 'is_contact' => 0,
74f89a9f 326 'description' => ts('Enable this setting to rebuild recipient list automatically during composing mail. Disable will allow you to rebuild recipient manually.'),
327 'help_text' => ts('CiviMail automatically fetches recipient list and count whenever mailing groups are included or excluded while composing bulk mail. This phenomena may degrade performance for large sites, so disable this setting to build and fetch recipients for selected groups, manually.'),
dfe1f88a
CW
328 ],
329 'allow_mail_from_logged_in_contact' => [
beac1417
MW
330 'group_name' => 'Mailing Preferences',
331 'group' => 'mailing',
332 'name' => 'allow_mail_from_logged_in_contact',
333 'type' => 'Boolean',
334 'quick_form_type' => 'YesNo',
335 'default' => 1,
8d2e8579 336 'title' => ts('Allow mail from logged in contact'),
beac1417
MW
337 'is_domain' => 1,
338 'is_contact' => 0,
8d2e8579 339 'description' => ts('Allow sending email from the logged in contact\'s email address.'),
beac1417 340 'help_text' => 'CiviCRM allows you to send email from the domain from email addresses and the logged in contact id addresses by default. Disable this if you only want to allow the domain from addresses to be used.',
dfe1f88a 341 ],
842d4bb7 342 'url_tracking_default' => [
343 'group_name' => 'Mailing Preferences',
344 'group' => 'mailing',
345 'name' => 'url_tracking_default',
346 'type' => 'Boolean',
347 'html_type' => 'checkbox',
348 'quick_form_type' => 'CheckBox',
349 'default' => '1',
350 'title' => ts('Enable click-through tracking by default'),
351 'is_domain' => 1,
352 'is_contact' => 0,
353 'description' => ts('If checked, mailings will have click-through tracking enabled by default.'),
354 'help_text' => NULL,
355 ],
356 'open_tracking_default' => [
357 'group_name' => 'Mailing Preferences',
358 'group' => 'mailing',
359 'name' => 'open_tracking_default',
360 'type' => 'Boolean',
361 'html_type' => 'checkbox',
362 'quick_form_type' => 'CheckBox',
363 'default' => '1',
364 'title' => ts('Enable open tracking by default'),
365 'is_domain' => 1,
366 'is_contact' => 0,
367 'description' => ts('If checked, mailings will have open tracking enabled by default.'),
368 'help_text' => NULL,
369 ],
2de3eb58
SP
370 // dev/cor#1768 Allow mailer sync interval to be configured by the
371 // adminstrator.
372 'civimail_sync_interval' => [
373 'group_name' => 'Mailing Preferences',
374 'group' => 'mailing',
375 'name' => 'civimail_sync_interval',
376 'type' => 'Integer',
377 'quick_form_type' => 'Element',
378 'html_type' => 'text',
379 'html_attributes' => [
380 'size' => 4,
381 'maxlength' => 8,
382 ],
383 'default' => 10,
384 'title' => ts('Database Update Frequency'),
385 'add' => '5.28',
386 'is_domain' => 1,
387 'is_contact' => 0,
388 'description' => ts('The frequency that CiviMail updates its sent mail database.'),
34801bd0 389 'help_text' => NULL,
2de3eb58 390 ],
dfe1f88a 391];