Merge pull request #22992 from eileenmcnaughton/billingnot
[civicrm-core.git] / CRM / Core / DAO / ActionSchedule.php
CommitLineData
e501603b 1<?php
c3fc2621 2
e501603b
TO
3/**
4 * @package CRM
ca5cec67 5 * @copyright CiviCRM LLC https://civicrm.org/licensing
e501603b
TO
6 *
7 * Generated from xml/schema/CRM/Core/ActionSchedule.xml
8 * DO NOT EDIT. Generated by CRM_Core_CodeGen
28979d65 9 * (GenCodeChecksum:ea596948c02894437bcc1a3f5b5c4f9d)
e501603b 10 */
c3fc2621 11
f41f0342 12/**
c3fc2621 13 * Database access object for the ActionSchedule entity.
f41f0342 14 */
e501603b 15class CRM_Core_DAO_ActionSchedule extends CRM_Core_DAO {
929a1c14
CW
16 const EXT = 'civicrm';
17 const TABLE_ADDED = '3.4';
c3fc2621 18
e501603b 19 /**
f41f0342 20 * Static instance to hold the table name.
e501603b
TO
21 *
22 * @var string
23 */
fa45b5b9 24 public static $_tableName = 'civicrm_action_schedule';
c3fc2621 25
e501603b 26 /**
f41f0342 27 * Should CiviCRM log any modifications to this table in the civicrm_log table.
e501603b 28 *
c3fc2621 29 * @var bool
e501603b 30 */
fa45b5b9 31 public static $_log = FALSE;
c3fc2621 32
e501603b 33 /**
28979d65
CW
34 * @var int|string|null
35 * (SQL type: int unsigned)
36 * Note that values will be retrieved from the database as a string.
e501603b
TO
37 */
38 public $id;
c3fc2621 39
e501603b
TO
40 /**
41 * Name of the action(reminder)
42 *
28979d65
CW
43 * @var string|null
44 * (SQL type: varchar(64))
45 * Note that values will be retrieved from the database as a string.
e501603b
TO
46 */
47 public $name;
c3fc2621 48
e501603b
TO
49 /**
50 * Title of the action(reminder)
51 *
28979d65
CW
52 * @var string|null
53 * (SQL type: varchar(64))
54 * Note that values will be retrieved from the database as a string.
e501603b
TO
55 */
56 public $title;
c3fc2621 57
e501603b
TO
58 /**
59 * Recipient
60 *
28979d65
CW
61 * @var string|null
62 * (SQL type: varchar(64))
63 * Note that values will be retrieved from the database as a string.
e501603b
TO
64 */
65 public $recipient;
c3fc2621 66
e501603b
TO
67 /**
68 * Is this the recipient criteria limited to OR in addition to?
69 *
28979d65
CW
70 * @var bool|string|null
71 * (SQL type: tinyint)
72 * Note that values will be retrieved from the database as a string.
e501603b
TO
73 */
74 public $limit_to;
c3fc2621 75
e501603b
TO
76 /**
77 * Entity value
78 *
28979d65
CW
79 * @var string|null
80 * (SQL type: varchar(255))
81 * Note that values will be retrieved from the database as a string.
e501603b
TO
82 */
83 public $entity_value;
c3fc2621 84
e501603b
TO
85 /**
86 * Entity status
87 *
28979d65
CW
88 * @var string|null
89 * (SQL type: varchar(64))
90 * Note that values will be retrieved from the database as a string.
e501603b
TO
91 */
92 public $entity_status;
c3fc2621 93
e501603b
TO
94 /**
95 * Reminder Interval.
96 *
28979d65
CW
97 * @var int|string|null
98 * (SQL type: int unsigned)
99 * Note that values will be retrieved from the database as a string.
e501603b
TO
100 */
101 public $start_action_offset;
c3fc2621 102
e501603b
TO
103 /**
104 * Time units for reminder.
105 *
28979d65
CW
106 * @var string|null
107 * (SQL type: varchar(8))
108 * Note that values will be retrieved from the database as a string.
e501603b
TO
109 */
110 public $start_action_unit;
c3fc2621 111
e501603b
TO
112 /**
113 * Reminder Action
114 *
28979d65
CW
115 * @var string|null
116 * (SQL type: varchar(64))
117 * Note that values will be retrieved from the database as a string.
e501603b
TO
118 */
119 public $start_action_condition;
c3fc2621 120
e501603b
TO
121 /**
122 * Entity date
123 *
28979d65
CW
124 * @var string|null
125 * (SQL type: varchar(64))
126 * Note that values will be retrieved from the database as a string.
e501603b
TO
127 */
128 public $start_action_date;
c3fc2621 129
e501603b 130 /**
28979d65
CW
131 * @var bool|string|null
132 * (SQL type: tinyint)
133 * Note that values will be retrieved from the database as a string.
e501603b
TO
134 */
135 public $is_repeat;
c3fc2621 136
e501603b
TO
137 /**
138 * Time units for repetition of reminder.
139 *
28979d65
CW
140 * @var string|null
141 * (SQL type: varchar(8))
142 * Note that values will be retrieved from the database as a string.
e501603b
TO
143 */
144 public $repetition_frequency_unit;
c3fc2621 145
e501603b
TO
146 /**
147 * Time interval for repeating the reminder.
148 *
28979d65
CW
149 * @var int|string|null
150 * (SQL type: int unsigned)
151 * Note that values will be retrieved from the database as a string.
e501603b
TO
152 */
153 public $repetition_frequency_interval;
c3fc2621 154
e501603b
TO
155 /**
156 * Time units till repetition of reminder.
157 *
28979d65
CW
158 * @var string|null
159 * (SQL type: varchar(8))
160 * Note that values will be retrieved from the database as a string.
e501603b
TO
161 */
162 public $end_frequency_unit;
c3fc2621 163
e501603b
TO
164 /**
165 * Time interval till repeating the reminder.
166 *
28979d65
CW
167 * @var int|string|null
168 * (SQL type: int unsigned)
169 * Note that values will be retrieved from the database as a string.
e501603b
TO
170 */
171 public $end_frequency_interval;
c3fc2621 172
e501603b
TO
173 /**
174 * Reminder Action till repeating the reminder.
175 *
28979d65
CW
176 * @var string|null
177 * (SQL type: varchar(32))
178 * Note that values will be retrieved from the database as a string.
e501603b
TO
179 */
180 public $end_action;
c3fc2621 181
e501603b
TO
182 /**
183 * Entity end date
184 *
28979d65
CW
185 * @var string|null
186 * (SQL type: varchar(64))
187 * Note that values will be retrieved from the database as a string.
e501603b
TO
188 */
189 public $end_date;
c3fc2621 190
e501603b
TO
191 /**
192 * Is this option active?
193 *
28979d65
CW
194 * @var bool|string|null
195 * (SQL type: tinyint)
196 * Note that values will be retrieved from the database as a string.
e501603b
TO
197 */
198 public $is_active;
c3fc2621 199
e501603b
TO
200 /**
201 * Contact IDs to which reminder should be sent.
202 *
28979d65
CW
203 * @var string|null
204 * (SQL type: varchar(128))
205 * Note that values will be retrieved from the database as a string.
e501603b
TO
206 */
207 public $recipient_manual;
c3fc2621 208
e501603b
TO
209 /**
210 * listing based on recipient field.
211 *
28979d65
CW
212 * @var string|null
213 * (SQL type: varchar(128))
214 * Note that values will be retrieved from the database as a string.
e501603b
TO
215 */
216 public $recipient_listing;
c3fc2621 217
e501603b
TO
218 /**
219 * Body of the mailing in text format.
220 *
28979d65
CW
221 * @var string|null
222 * (SQL type: longtext)
223 * Note that values will be retrieved from the database as a string.
e501603b
TO
224 */
225 public $body_text;
c3fc2621 226
e501603b
TO
227 /**
228 * Body of the mailing in html format.
229 *
28979d65
CW
230 * @var string|null
231 * (SQL type: longtext)
232 * Note that values will be retrieved from the database as a string.
e501603b
TO
233 */
234 public $body_html;
c3fc2621 235
e501603b
TO
236 /**
237 * Content of the SMS text.
238 *
28979d65
CW
239 * @var string|null
240 * (SQL type: longtext)
241 * Note that values will be retrieved from the database as a string.
e501603b
TO
242 */
243 public $sms_body_text;
c3fc2621 244
e501603b
TO
245 /**
246 * Subject of mailing
247 *
28979d65
CW
248 * @var string|null
249 * (SQL type: varchar(128))
250 * Note that values will be retrieved from the database as a string.
e501603b
TO
251 */
252 public $subject;
c3fc2621 253
e501603b
TO
254 /**
255 * Record Activity for this reminder?
256 *
28979d65
CW
257 * @var bool|string|null
258 * (SQL type: tinyint)
259 * Note that values will be retrieved from the database as a string.
e501603b
TO
260 */
261 public $record_activity;
c3fc2621 262
e501603b
TO
263 /**
264 * Name/ID of the mapping to use on this table
265 *
28979d65
CW
266 * @var string|null
267 * (SQL type: varchar(64))
268 * Note that values will be retrieved from the database as a string.
e501603b
TO
269 */
270 public $mapping_id;
c3fc2621 271
e501603b
TO
272 /**
273 * FK to Group
274 *
28979d65
CW
275 * @var int|string|null
276 * (SQL type: int unsigned)
277 * Note that values will be retrieved from the database as a string.
e501603b
TO
278 */
279 public $group_id;
c3fc2621 280
e501603b
TO
281 /**
282 * FK to the message template.
283 *
28979d65
CW
284 * @var int|string|null
285 * (SQL type: int unsigned)
286 * Note that values will be retrieved from the database as a string.
e501603b
TO
287 */
288 public $msg_template_id;
c3fc2621 289
e501603b
TO
290 /**
291 * FK to the message template.
292 *
28979d65
CW
293 * @var int|string|null
294 * (SQL type: int unsigned)
295 * Note that values will be retrieved from the database as a string.
e501603b
TO
296 */
297 public $sms_template_id;
c3fc2621 298
e501603b
TO
299 /**
300 * Date on which the reminder be sent.
301 *
28979d65
CW
302 * @var string|null
303 * (SQL type: date)
304 * Note that values will be retrieved from the database as a string.
e501603b
TO
305 */
306 public $absolute_date;
c3fc2621 307
e501603b
TO
308 /**
309 * Name in "from" field
310 *
28979d65
CW
311 * @var string|null
312 * (SQL type: varchar(255))
313 * Note that values will be retrieved from the database as a string.
e501603b
TO
314 */
315 public $from_name;
c3fc2621 316
e501603b
TO
317 /**
318 * Email address in "from" field
319 *
28979d65
CW
320 * @var string|null
321 * (SQL type: varchar(255))
322 * Note that values will be retrieved from the database as a string.
e501603b
TO
323 */
324 public $from_email;
c3fc2621 325
e501603b
TO
326 /**
327 * Send the message as email or sms or both.
328 *
28979d65
CW
329 * @var string|null
330 * (SQL type: varchar(128))
331 * Note that values will be retrieved from the database as a string.
e501603b
TO
332 */
333 public $mode;
c3fc2621 334
e501603b 335 /**
28979d65
CW
336 * @var int|string|null
337 * (SQL type: int unsigned)
338 * Note that values will be retrieved from the database as a string.
e501603b
TO
339 */
340 public $sms_provider_id;
c3fc2621 341
e501603b
TO
342 /**
343 * Used for repeating entity
344 *
28979d65
CW
345 * @var string|null
346 * (SQL type: varchar(64))
347 * Note that values will be retrieved from the database as a string.
e501603b
TO
348 */
349 public $used_for;
c3fc2621 350
e501603b
TO
351 /**
352 * Used for multilingual installation
353 *
28979d65
CW
354 * @var string|null
355 * (SQL type: varchar(128))
356 * Note that values will be retrieved from the database as a string.
e501603b
TO
357 */
358 public $filter_contact_language;
c3fc2621 359
e501603b
TO
360 /**
361 * Used for multilingual installation
362 *
28979d65
CW
363 * @var string|null
364 * (SQL type: varchar(8))
365 * Note that values will be retrieved from the database as a string.
e501603b
TO
366 */
367 public $communication_language;
c3fc2621 368
6a62a64e 369 /**
370 * When was the scheduled reminder created.
371 *
28979d65
CW
372 * @var string
373 * (SQL type: timestamp)
374 * Note that values will be retrieved from the database as a string.
6a62a64e 375 */
376 public $created_date;
377
378 /**
379 * When the reminder was created or modified.
380 *
28979d65
CW
381 * @var string
382 * (SQL type: timestamp)
383 * Note that values will be retrieved from the database as a string.
6a62a64e 384 */
385 public $modified_date;
386
387 /**
388 * Earliest date to consider start events from.
389 *
28979d65
CW
390 * @var string
391 * (SQL type: timestamp)
392 * Note that values will be retrieved from the database as a string.
6a62a64e 393 */
394 public $effective_start_date;
395
396 /**
397 * Latest date to consider end events from.
398 *
28979d65
CW
399 * @var string
400 * (SQL type: timestamp)
401 * Note that values will be retrieved from the database as a string.
6a62a64e 402 */
403 public $effective_end_date;
404
e501603b 405 /**
f41f0342 406 * Class constructor.
e501603b 407 */
c3fc2621 408 public function __construct() {
e501603b
TO
409 $this->__table = 'civicrm_action_schedule';
410 parent::__construct();
411 }
c3fc2621 412
449c4e6b
CW
413 /**
414 * Returns localized title of this entity.
7b66c3b5
AH
415 *
416 * @param bool $plural
417 * Whether to return the plural version of the title.
449c4e6b 418 */
7b66c3b5
AH
419 public static function getEntityTitle($plural = FALSE) {
420 return $plural ? ts('Action Schedules') : ts('Action Schedule');
449c4e6b
CW
421 }
422
e501603b 423 /**
f41f0342 424 * Returns foreign keys and entity references.
e501603b
TO
425 *
426 * @return array
427 * [CRM_Core_Reference_Interface]
428 */
c3fc2621 429 public static function getReferenceColumns() {
346aaaba 430 if (!isset(Civi::$statics[__CLASS__]['links'])) {
fa45b5b9 431 Civi::$statics[__CLASS__]['links'] = static::createReferenceColumns(__CLASS__);
c3fc2621
CW
432 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'group_id', 'civicrm_group', 'id');
433 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'msg_template_id', 'civicrm_msg_template', 'id');
434 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'sms_template_id', 'civicrm_msg_template', 'id');
435 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'sms_provider_id', 'civicrm_sms_provider', 'id');
346aaaba 436 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'links_callback', Civi::$statics[__CLASS__]['links']);
e501603b 437 }
346aaaba 438 return Civi::$statics[__CLASS__]['links'];
e501603b 439 }
c3fc2621 440
e501603b
TO
441 /**
442 * Returns all the column names of this table
443 *
444 * @return array
445 */
c3fc2621 446 public static function &fields() {
346aaaba 447 if (!isset(Civi::$statics[__CLASS__]['fields'])) {
c3fc2621
CW
448 Civi::$statics[__CLASS__]['fields'] = [
449 'id' => [
e501603b
TO
450 'name' => 'id',
451 'type' => CRM_Utils_Type::T_INT,
c3fc2621
CW
452 'title' => ts('Action Schedule ID'),
453 'required' => TRUE,
a36434b9 454 'where' => 'civicrm_action_schedule.id',
522a26c9 455 'table_name' => 'civicrm_action_schedule',
456 'entity' => 'ActionSchedule',
457 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 458 'localizable' => 0,
2cbbebe8
A
459 'html' => [
460 'type' => 'Number',
461 ],
1fe423d6 462 'readonly' => TRUE,
a9d0587b 463 'add' => '3.4',
c3fc2621
CW
464 ],
465 'name' => [
e501603b
TO
466 'name' => 'name',
467 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 468 'title' => ts('Name'),
215b423e 469 'description' => ts('Name of the action(reminder)'),
e501603b
TO
470 'maxlength' => 64,
471 'size' => CRM_Utils_Type::BIG,
a36434b9 472 'where' => 'civicrm_action_schedule.name',
522a26c9 473 'table_name' => 'civicrm_action_schedule',
474 'entity' => 'ActionSchedule',
475 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 476 'localizable' => 0,
a9d0587b 477 'add' => '3.4',
c3fc2621
CW
478 ],
479 'title' => [
e501603b
TO
480 'name' => 'title',
481 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 482 'title' => ts('Title'),
215b423e 483 'description' => ts('Title of the action(reminder)'),
e501603b
TO
484 'maxlength' => 64,
485 'size' => CRM_Utils_Type::BIG,
a36434b9 486 'where' => 'civicrm_action_schedule.title',
522a26c9 487 'table_name' => 'civicrm_action_schedule',
488 'entity' => 'ActionSchedule',
489 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 490 'localizable' => 0,
a9d0587b 491 'add' => '3.4',
c3fc2621
CW
492 ],
493 'recipient' => [
e501603b
TO
494 'name' => 'recipient',
495 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 496 'title' => ts('Recipient'),
215b423e 497 'description' => ts('Recipient'),
e501603b
TO
498 'maxlength' => 64,
499 'size' => CRM_Utils_Type::BIG,
a36434b9 500 'where' => 'civicrm_action_schedule.recipient',
522a26c9 501 'table_name' => 'civicrm_action_schedule',
502 'entity' => 'ActionSchedule',
503 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 504 'localizable' => 0,
c23563e3
SL
505 'html' => [
506 'label' => ts("Recipient"),
507 ],
a9d0587b 508 'add' => '3.4',
c3fc2621
CW
509 ],
510 'limit_to' => [
e501603b
TO
511 'name' => 'limit_to',
512 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 513 'title' => ts('Limit To'),
215b423e 514 'description' => ts('Is this the recipient criteria limited to OR in addition to?'),
a36434b9 515 'where' => 'civicrm_action_schedule.limit_to',
522a26c9 516 'table_name' => 'civicrm_action_schedule',
517 'entity' => 'ActionSchedule',
518 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 519 'localizable' => 0,
c23563e3
SL
520 'html' => [
521 'label' => ts("Limit To"),
522 ],
a9d0587b 523 'add' => '4.4',
c3fc2621
CW
524 ],
525 'entity_value' => [
e501603b
TO
526 'name' => 'entity_value',
527 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 528 'title' => ts('Entity Value'),
215b423e 529 'description' => ts('Entity value'),
e501603b
TO
530 'maxlength' => 255,
531 'size' => CRM_Utils_Type::HUGE,
a36434b9 532 'where' => 'civicrm_action_schedule.entity_value',
522a26c9 533 'table_name' => 'civicrm_action_schedule',
534 'entity' => 'ActionSchedule',
535 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 536 'localizable' => 0,
d5851cf2 537 'serialize' => self::SERIALIZE_SEPARATOR_TRIMMED,
c23563e3
SL
538 'html' => [
539 'label' => ts("Entity value"),
540 ],
a9d0587b 541 'add' => '3.4',
c3fc2621
CW
542 ],
543 'entity_status' => [
e501603b
TO
544 'name' => 'entity_status',
545 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 546 'title' => ts('Entity Status'),
215b423e 547 'description' => ts('Entity status'),
e501603b
TO
548 'maxlength' => 64,
549 'size' => CRM_Utils_Type::BIG,
a36434b9 550 'where' => 'civicrm_action_schedule.entity_status',
522a26c9 551 'table_name' => 'civicrm_action_schedule',
552 'entity' => 'ActionSchedule',
553 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 554 'localizable' => 0,
d5851cf2 555 'serialize' => self::SERIALIZE_SEPARATOR_TRIMMED,
c23563e3
SL
556 'html' => [
557 'label' => ts("Entity Status"),
558 ],
a9d0587b 559 'add' => '3.4',
c3fc2621
CW
560 ],
561 'start_action_offset' => [
e501603b
TO
562 'name' => 'start_action_offset',
563 'type' => CRM_Utils_Type::T_INT,
c3fc2621 564 'title' => ts('Start Action Offset'),
215b423e 565 'description' => ts('Reminder Interval.'),
a36434b9 566 'where' => 'civicrm_action_schedule.start_action_offset',
45a83e42 567 'default' => '0',
522a26c9 568 'table_name' => 'civicrm_action_schedule',
569 'entity' => 'ActionSchedule',
570 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 571 'localizable' => 0,
c23563e3
SL
572 'html' => [
573 'label' => ts("Start Action Offset"),
574 ],
a9d0587b 575 'add' => '3.4',
c3fc2621
CW
576 ],
577 'start_action_unit' => [
e501603b
TO
578 'name' => 'start_action_unit',
579 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 580 'title' => ts('Start Action Unit'),
215b423e 581 'description' => ts('Time units for reminder.'),
e501603b
TO
582 'maxlength' => 8,
583 'size' => CRM_Utils_Type::EIGHT,
a36434b9 584 'where' => 'civicrm_action_schedule.start_action_unit',
522a26c9 585 'table_name' => 'civicrm_action_schedule',
586 'entity' => 'ActionSchedule',
587 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 588 'localizable' => 0,
c3fc2621 589 'html' => [
e501603b 590 'type' => 'Select',
c23563e3 591 'label' => ts("Start Action Unit"),
c3fc2621
CW
592 ],
593 'pseudoconstant' => [
e501603b 594 'callback' => 'CRM_Core_SelectValues::getRecurringFrequencyUnits',
e6ca0a57 595 ],
a9d0587b 596 'add' => '3.4',
c3fc2621
CW
597 ],
598 'start_action_condition' => [
e501603b
TO
599 'name' => 'start_action_condition',
600 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 601 'title' => ts('Start Action Condition'),
215b423e 602 'description' => ts('Reminder Action'),
ed6e48d9 603 'maxlength' => 64,
604 'size' => CRM_Utils_Type::BIG,
a36434b9 605 'where' => 'civicrm_action_schedule.start_action_condition',
522a26c9 606 'table_name' => 'civicrm_action_schedule',
607 'entity' => 'ActionSchedule',
608 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 609 'localizable' => 0,
c23563e3
SL
610 'html' => [
611 'label' => ts("Start Action condition"),
612 ],
a9d0587b 613 'add' => '3.4',
c3fc2621
CW
614 ],
615 'start_action_date' => [
e501603b
TO
616 'name' => 'start_action_date',
617 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 618 'title' => ts('Start Action Date'),
215b423e 619 'description' => ts('Entity date'),
e501603b
TO
620 'maxlength' => 64,
621 'size' => CRM_Utils_Type::BIG,
a36434b9 622 'where' => 'civicrm_action_schedule.start_action_date',
522a26c9 623 'table_name' => 'civicrm_action_schedule',
624 'entity' => 'ActionSchedule',
625 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 626 'localizable' => 0,
c23563e3
SL
627 'html' => [
628 'label' => ts("Start Action Date"),
629 ],
a9d0587b 630 'add' => '3.4',
c3fc2621
CW
631 ],
632 'is_repeat' => [
e501603b
TO
633 'name' => 'is_repeat',
634 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 635 'title' => ts('Repeat?'),
a36434b9 636 'where' => 'civicrm_action_schedule.is_repeat',
45a83e42 637 'default' => '0',
522a26c9 638 'table_name' => 'civicrm_action_schedule',
639 'entity' => 'ActionSchedule',
640 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 641 'localizable' => 0,
a9d0587b 642 'add' => '3.4',
c3fc2621
CW
643 ],
644 'repetition_frequency_unit' => [
e501603b
TO
645 'name' => 'repetition_frequency_unit',
646 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 647 'title' => ts('Repetition Frequency Unit'),
215b423e 648 'description' => ts('Time units for repetition of reminder.'),
e501603b
TO
649 'maxlength' => 8,
650 'size' => CRM_Utils_Type::EIGHT,
a36434b9 651 'where' => 'civicrm_action_schedule.repetition_frequency_unit',
522a26c9 652 'table_name' => 'civicrm_action_schedule',
653 'entity' => 'ActionSchedule',
654 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 655 'localizable' => 0,
c3fc2621 656 'html' => [
e501603b 657 'type' => 'Select',
c23563e3 658 'label' => ts("Repetition Frequency Unit"),
c3fc2621
CW
659 ],
660 'pseudoconstant' => [
e501603b 661 'callback' => 'CRM_Core_SelectValues::getRecurringFrequencyUnits',
e6ca0a57 662 ],
a9d0587b 663 'add' => '3.4',
c3fc2621
CW
664 ],
665 'repetition_frequency_interval' => [
e501603b
TO
666 'name' => 'repetition_frequency_interval',
667 'type' => CRM_Utils_Type::T_INT,
c3fc2621 668 'title' => ts('Repetition Frequency Interval'),
215b423e 669 'description' => ts('Time interval for repeating the reminder.'),
a36434b9 670 'where' => 'civicrm_action_schedule.repetition_frequency_interval',
45a83e42 671 'default' => '0',
522a26c9 672 'table_name' => 'civicrm_action_schedule',
673 'entity' => 'ActionSchedule',
674 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 675 'localizable' => 0,
c23563e3
SL
676 'html' => [
677 'label' => ts("Repetition Frequency Interval"),
678 ],
a9d0587b 679 'add' => '3.4',
c3fc2621
CW
680 ],
681 'end_frequency_unit' => [
e501603b
TO
682 'name' => 'end_frequency_unit',
683 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 684 'title' => ts('End Frequency Unit'),
215b423e 685 'description' => ts('Time units till repetition of reminder.'),
e501603b
TO
686 'maxlength' => 8,
687 'size' => CRM_Utils_Type::EIGHT,
a36434b9 688 'where' => 'civicrm_action_schedule.end_frequency_unit',
522a26c9 689 'table_name' => 'civicrm_action_schedule',
690 'entity' => 'ActionSchedule',
691 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 692 'localizable' => 0,
c3fc2621 693 'html' => [
e501603b 694 'type' => 'Select',
c23563e3 695 'label' => ts("End Frequency Unit"),
c3fc2621
CW
696 ],
697 'pseudoconstant' => [
e501603b 698 'callback' => 'CRM_Core_SelectValues::getRecurringFrequencyUnits',
e6ca0a57 699 ],
a9d0587b 700 'add' => '3.4',
c3fc2621
CW
701 ],
702 'end_frequency_interval' => [
e501603b
TO
703 'name' => 'end_frequency_interval',
704 'type' => CRM_Utils_Type::T_INT,
c3fc2621 705 'title' => ts('End Frequency Interval'),
215b423e 706 'description' => ts('Time interval till repeating the reminder.'),
a36434b9 707 'where' => 'civicrm_action_schedule.end_frequency_interval',
45a83e42 708 'default' => '0',
522a26c9 709 'table_name' => 'civicrm_action_schedule',
710 'entity' => 'ActionSchedule',
711 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 712 'localizable' => 0,
c23563e3
SL
713 'html' => [
714 'label' => ts("End Frequency Interval"),
715 ],
a9d0587b 716 'add' => '3.4',
c3fc2621
CW
717 ],
718 'end_action' => [
e501603b
TO
719 'name' => 'end_action',
720 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 721 'title' => ts('End Action'),
215b423e 722 'description' => ts('Reminder Action till repeating the reminder.'),
e501603b
TO
723 'maxlength' => 32,
724 'size' => CRM_Utils_Type::MEDIUM,
a36434b9 725 'where' => 'civicrm_action_schedule.end_action',
522a26c9 726 'table_name' => 'civicrm_action_schedule',
727 'entity' => 'ActionSchedule',
728 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 729 'localizable' => 0,
c23563e3
SL
730 'html' => [
731 'label' => ts("End Action"),
732 ],
a9d0587b 733 'add' => '3.4',
c3fc2621
CW
734 ],
735 'end_date' => [
e501603b
TO
736 'name' => 'end_date',
737 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 738 'title' => ts('End Date'),
215b423e 739 'description' => ts('Entity end date'),
e501603b
TO
740 'maxlength' => 64,
741 'size' => CRM_Utils_Type::BIG,
a36434b9 742 'where' => 'civicrm_action_schedule.end_date',
522a26c9 743 'table_name' => 'civicrm_action_schedule',
744 'entity' => 'ActionSchedule',
745 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 746 'localizable' => 0,
c23563e3
SL
747 'html' => [
748 'label' => ts("End Date"),
749 ],
a9d0587b 750 'add' => '3.4',
c3fc2621
CW
751 ],
752 'is_active' => [
e501603b
TO
753 'name' => 'is_active',
754 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 755 'title' => ts('Schedule is Active?'),
215b423e 756 'description' => ts('Is this option active?'),
a36434b9 757 'where' => 'civicrm_action_schedule.is_active',
e501603b 758 'default' => '1',
522a26c9 759 'table_name' => 'civicrm_action_schedule',
760 'entity' => 'ActionSchedule',
761 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 762 'localizable' => 0,
a9d0587b 763 'add' => '3.4',
c3fc2621
CW
764 ],
765 'recipient_manual' => [
e501603b
TO
766 'name' => 'recipient_manual',
767 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 768 'title' => ts('Recipient Manual'),
215b423e 769 'description' => ts('Contact IDs to which reminder should be sent.'),
e501603b
TO
770 'maxlength' => 128,
771 'size' => CRM_Utils_Type::HUGE,
a36434b9 772 'where' => 'civicrm_action_schedule.recipient_manual',
522a26c9 773 'table_name' => 'civicrm_action_schedule',
774 'entity' => 'ActionSchedule',
775 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 776 'localizable' => 0,
d5851cf2 777 'serialize' => self::SERIALIZE_COMMA,
a9d0587b 778 'add' => '3.4',
c3fc2621
CW
779 ],
780 'recipient_listing' => [
e501603b
TO
781 'name' => 'recipient_listing',
782 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 783 'title' => ts('Recipient Listing'),
215b423e 784 'description' => ts('listing based on recipient field.'),
e501603b
TO
785 'maxlength' => 128,
786 'size' => CRM_Utils_Type::HUGE,
a36434b9 787 'where' => 'civicrm_action_schedule.recipient_listing',
522a26c9 788 'table_name' => 'civicrm_action_schedule',
789 'entity' => 'ActionSchedule',
790 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 791 'localizable' => 0,
a9d0587b 792 'add' => '4.1',
c3fc2621
CW
793 ],
794 'body_text' => [
e501603b
TO
795 'name' => 'body_text',
796 'type' => CRM_Utils_Type::T_LONGTEXT,
c3fc2621 797 'title' => ts('Reminder Text'),
215b423e 798 'description' => ts('Body of the mailing in text format.'),
a36434b9 799 'where' => 'civicrm_action_schedule.body_text',
522a26c9 800 'table_name' => 'civicrm_action_schedule',
801 'entity' => 'ActionSchedule',
802 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 803 'localizable' => 0,
a9d0587b 804 'add' => '3.4',
c3fc2621
CW
805 ],
806 'body_html' => [
e501603b
TO
807 'name' => 'body_html',
808 'type' => CRM_Utils_Type::T_LONGTEXT,
c3fc2621 809 'title' => ts('Reminder HTML'),
215b423e 810 'description' => ts('Body of the mailing in html format.'),
a36434b9 811 'where' => 'civicrm_action_schedule.body_html',
522a26c9 812 'table_name' => 'civicrm_action_schedule',
813 'entity' => 'ActionSchedule',
814 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 815 'localizable' => 0,
a9d0587b 816 'add' => '3.4',
c3fc2621
CW
817 ],
818 'sms_body_text' => [
e501603b
TO
819 'name' => 'sms_body_text',
820 'type' => CRM_Utils_Type::T_LONGTEXT,
c3fc2621 821 'title' => ts('SMS Reminder Text'),
215b423e 822 'description' => ts('Content of the SMS text.'),
a36434b9 823 'where' => 'civicrm_action_schedule.sms_body_text',
522a26c9 824 'table_name' => 'civicrm_action_schedule',
825 'entity' => 'ActionSchedule',
826 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 827 'localizable' => 0,
a9d0587b 828 'add' => '4.5',
c3fc2621
CW
829 ],
830 'subject' => [
e501603b
TO
831 'name' => 'subject',
832 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 833 'title' => ts('Reminder Subject'),
215b423e 834 'description' => ts('Subject of mailing'),
e501603b
TO
835 'maxlength' => 128,
836 'size' => CRM_Utils_Type::HUGE,
a36434b9 837 'where' => 'civicrm_action_schedule.subject',
522a26c9 838 'table_name' => 'civicrm_action_schedule',
839 'entity' => 'ActionSchedule',
840 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 841 'localizable' => 0,
a9d0587b 842 'add' => '3.4',
c3fc2621
CW
843 ],
844 'record_activity' => [
e501603b
TO
845 'name' => 'record_activity',
846 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 847 'title' => ts('Record Activity for Reminder?'),
215b423e 848 'description' => ts('Record Activity for this reminder?'),
a36434b9 849 'where' => 'civicrm_action_schedule.record_activity',
5fb0de1f 850 'default' => NULL,
522a26c9 851 'table_name' => 'civicrm_action_schedule',
852 'entity' => 'ActionSchedule',
853 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 854 'localizable' => 0,
a9d0587b 855 'add' => '3.4',
c3fc2621
CW
856 ],
857 'mapping_id' => [
e501603b
TO
858 'name' => 'mapping_id',
859 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 860 'title' => ts('Reminder Mapping'),
215b423e 861 'description' => ts('Name/ID of the mapping to use on this table'),
e501603b
TO
862 'maxlength' => 64,
863 'size' => CRM_Utils_Type::BIG,
a36434b9 864 'where' => 'civicrm_action_schedule.mapping_id',
522a26c9 865 'table_name' => 'civicrm_action_schedule',
866 'entity' => 'ActionSchedule',
867 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 868 'localizable' => 0,
a9d0587b 869 'add' => '3.4',
c3fc2621
CW
870 ],
871 'group_id' => [
e501603b
TO
872 'name' => 'group_id',
873 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 874 'title' => ts('Group ID'),
215b423e 875 'description' => ts('FK to Group'),
a36434b9 876 'where' => 'civicrm_action_schedule.group_id',
522a26c9 877 'table_name' => 'civicrm_action_schedule',
878 'entity' => 'ActionSchedule',
879 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 880 'localizable' => 0,
e501603b 881 'FKClassName' => 'CRM_Contact_DAO_Group',
c3fc2621 882 'html' => [
e501603b 883 'type' => 'Select',
2cbbebe8 884 'label' => ts("Group"),
c3fc2621
CW
885 ],
886 'pseudoconstant' => [
e501603b
TO
887 'table' => 'civicrm_group',
888 'keyColumn' => 'id',
889 'labelColumn' => 'title',
e6ca0a57 890 ],
a9d0587b 891 'add' => '3.4',
c3fc2621
CW
892 ],
893 'msg_template_id' => [
e501603b
TO
894 'name' => 'msg_template_id',
895 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 896 'title' => ts('Message Template ID'),
215b423e 897 'description' => ts('FK to the message template.'),
a36434b9 898 'where' => 'civicrm_action_schedule.msg_template_id',
522a26c9 899 'table_name' => 'civicrm_action_schedule',
900 'entity' => 'ActionSchedule',
901 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 902 'localizable' => 0,
e501603b 903 'FKClassName' => 'CRM_Core_DAO_MessageTemplate',
2cbbebe8
A
904 'html' => [
905 'label' => ts("Message Template"),
906 ],
a9d0587b 907 'add' => NULL,
c3fc2621
CW
908 ],
909 'sms_template_id' => [
e501603b
TO
910 'name' => 'sms_template_id',
911 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 912 'title' => ts('SMS Template ID'),
215b423e 913 'description' => ts('FK to the message template.'),
a36434b9 914 'where' => 'civicrm_action_schedule.sms_template_id',
522a26c9 915 'table_name' => 'civicrm_action_schedule',
916 'entity' => 'ActionSchedule',
917 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 918 'localizable' => 0,
e501603b 919 'FKClassName' => 'CRM_Core_DAO_MessageTemplate',
2cbbebe8
A
920 'html' => [
921 'label' => ts("SMS Template"),
922 ],
a9d0587b 923 'add' => NULL,
c3fc2621
CW
924 ],
925 'absolute_date' => [
e501603b
TO
926 'name' => 'absolute_date',
927 'type' => CRM_Utils_Type::T_DATE,
c3fc2621 928 'title' => ts('Fixed Date for Reminder'),
215b423e 929 'description' => ts('Date on which the reminder be sent.'),
a36434b9 930 'where' => 'civicrm_action_schedule.absolute_date',
522a26c9 931 'table_name' => 'civicrm_action_schedule',
932 'entity' => 'ActionSchedule',
933 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 934 'localizable' => 0,
a9d0587b 935 'add' => '4.1',
c3fc2621
CW
936 ],
937 'from_name' => [
e501603b
TO
938 'name' => 'from_name',
939 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 940 'title' => ts('Reminder from Name'),
215b423e 941 'description' => ts('Name in "from" field'),
e501603b
TO
942 'maxlength' => 255,
943 'size' => CRM_Utils_Type::HUGE,
a36434b9 944 'where' => 'civicrm_action_schedule.from_name',
522a26c9 945 'table_name' => 'civicrm_action_schedule',
946 'entity' => 'ActionSchedule',
947 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 948 'localizable' => 0,
a9d0587b 949 'add' => '4.5',
c3fc2621
CW
950 ],
951 'from_email' => [
e501603b
TO
952 'name' => 'from_email',
953 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 954 'title' => ts('Reminder From Email'),
215b423e 955 'description' => ts('Email address in "from" field'),
e501603b
TO
956 'maxlength' => 255,
957 'size' => CRM_Utils_Type::HUGE,
a36434b9 958 'where' => 'civicrm_action_schedule.from_email',
522a26c9 959 'table_name' => 'civicrm_action_schedule',
960 'entity' => 'ActionSchedule',
961 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 962 'localizable' => 0,
a9d0587b 963 'add' => '4.5',
c3fc2621
CW
964 ],
965 'mode' => [
e501603b
TO
966 'name' => 'mode',
967 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 968 'title' => ts('Message Mode'),
215b423e 969 'description' => ts('Send the message as email or sms or both.'),
e501603b
TO
970 'maxlength' => 128,
971 'size' => CRM_Utils_Type::HUGE,
a36434b9 972 'where' => 'civicrm_action_schedule.mode',
e501603b 973 'default' => 'Email',
522a26c9 974 'table_name' => 'civicrm_action_schedule',
975 'entity' => 'ActionSchedule',
976 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 977 'localizable' => 0,
c3fc2621 978 'html' => [
e501603b 979 'type' => 'Select',
c3fc2621
CW
980 ],
981 'pseudoconstant' => [
e501603b
TO
982 'optionGroupName' => 'msg_mode',
983 'optionEditPath' => 'civicrm/admin/options/msg_mode',
e6ca0a57 984 ],
a9d0587b 985 'add' => '4.5',
c3fc2621
CW
986 ],
987 'sms_provider_id' => [
e501603b
TO
988 'name' => 'sms_provider_id',
989 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 990 'title' => ts('SMS Provider ID'),
a36434b9 991 'where' => 'civicrm_action_schedule.sms_provider_id',
522a26c9 992 'table_name' => 'civicrm_action_schedule',
993 'entity' => 'ActionSchedule',
994 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 995 'localizable' => 0,
e501603b 996 'FKClassName' => 'CRM_SMS_DAO_Provider',
c3fc2621 997 'html' => [
e501603b 998 'type' => 'Select',
2cbbebe8 999 'label' => ts("SMS Provider"),
c3fc2621 1000 ],
a9d0587b 1001 'add' => '4.5',
c3fc2621
CW
1002 ],
1003 'used_for' => [
e501603b
TO
1004 'name' => 'used_for',
1005 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1006 'title' => ts('Used For'),
215b423e 1007 'description' => ts('Used for repeating entity'),
e501603b
TO
1008 'maxlength' => 64,
1009 'size' => CRM_Utils_Type::BIG,
a36434b9 1010 'where' => 'civicrm_action_schedule.used_for',
522a26c9 1011 'table_name' => 'civicrm_action_schedule',
1012 'entity' => 'ActionSchedule',
1013 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 1014 'localizable' => 0,
c23563e3
SL
1015 'html' => [
1016 'label' => ts("Used For"),
1017 ],
a9d0587b 1018 'add' => '4.6',
c3fc2621
CW
1019 ],
1020 'filter_contact_language' => [
e501603b
TO
1021 'name' => 'filter_contact_language',
1022 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1023 'title' => ts('Filter Contact Language'),
215b423e 1024 'description' => ts('Used for multilingual installation'),
e501603b
TO
1025 'maxlength' => 128,
1026 'size' => CRM_Utils_Type::HUGE,
a36434b9 1027 'where' => 'civicrm_action_schedule.filter_contact_language',
522a26c9 1028 'table_name' => 'civicrm_action_schedule',
1029 'entity' => 'ActionSchedule',
1030 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 1031 'localizable' => 0,
c23563e3
SL
1032 'html' => [
1033 'label' => ts("Filter Contact Language"),
1034 ],
a9d0587b 1035 'add' => '4.7',
c3fc2621
CW
1036 ],
1037 'communication_language' => [
e501603b
TO
1038 'name' => 'communication_language',
1039 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1040 'title' => ts('Communication Language'),
215b423e 1041 'description' => ts('Used for multilingual installation'),
e501603b
TO
1042 'maxlength' => 8,
1043 'size' => CRM_Utils_Type::EIGHT,
a36434b9 1044 'where' => 'civicrm_action_schedule.communication_language',
522a26c9 1045 'table_name' => 'civicrm_action_schedule',
1046 'entity' => 'ActionSchedule',
1047 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 1048 'localizable' => 0,
c23563e3
SL
1049 'html' => [
1050 'label' => ts("Communication Language"),
1051 ],
a9d0587b 1052 'add' => '4.7',
c3fc2621 1053 ],
6a62a64e 1054 'action_schedule_created_date' => [
1055 'name' => 'created_date',
1056 'type' => CRM_Utils_Type::T_TIMESTAMP,
1057 'title' => ts('Created Date'),
1058 'description' => ts('When was the scheduled reminder created.'),
1059 'required' => FALSE,
1060 'where' => 'civicrm_action_schedule.created_date',
1061 'export' => TRUE,
1062 'default' => 'CURRENT_TIMESTAMP',
1063 'table_name' => 'civicrm_action_schedule',
1064 'entity' => 'ActionSchedule',
1065 'bao' => 'CRM_Core_BAO_ActionSchedule',
1066 'localizable' => 0,
1067 'add' => '5.34',
1068 ],
1069 'modified_date' => [
1070 'name' => 'modified_date',
1071 'type' => CRM_Utils_Type::T_TIMESTAMP,
1072 'title' => ts('Modified Date'),
1073 'description' => ts('When the reminder was created or modified.'),
1074 'required' => FALSE,
1075 'where' => 'civicrm_action_schedule.modified_date',
1076 'default' => 'CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP',
1077 'table_name' => 'civicrm_action_schedule',
1078 'entity' => 'ActionSchedule',
1079 'bao' => 'CRM_Core_BAO_ActionSchedule',
1080 'localizable' => 0,
c23563e3
SL
1081 'html' => [
1082 'label' => ts("Modified Date"),
1083 ],
a0e733f3 1084 'readonly' => TRUE,
6a62a64e 1085 'add' => '5.34',
1086 ],
1087 'action_schedule_effective_start_date' => [
1088 'name' => 'effective_start_date',
1089 'type' => CRM_Utils_Type::T_TIMESTAMP,
1090 'title' => ts('Effective start date'),
1091 'description' => ts('Earliest date to consider start events from.'),
1092 'required' => FALSE,
1093 'where' => 'civicrm_action_schedule.effective_start_date',
1094 'export' => TRUE,
1095 'table_name' => 'civicrm_action_schedule',
1096 'entity' => 'ActionSchedule',
1097 'bao' => 'CRM_Core_BAO_ActionSchedule',
1098 'localizable' => 0,
1099 'add' => '5.34',
1100 ],
1101 'action_schedule_effective_end_date' => [
1102 'name' => 'effective_end_date',
1103 'type' => CRM_Utils_Type::T_TIMESTAMP,
1104 'title' => ts('Effective end date'),
1105 'description' => ts('Latest date to consider end events from.'),
1106 'required' => FALSE,
1107 'where' => 'civicrm_action_schedule.effective_end_date',
1108 'export' => TRUE,
1109 'table_name' => 'civicrm_action_schedule',
1110 'entity' => 'ActionSchedule',
1111 'bao' => 'CRM_Core_BAO_ActionSchedule',
1112 'localizable' => 0,
1113 'add' => '5.34',
1114 ],
c3fc2621 1115 ];
346aaaba 1116 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'fields_callback', Civi::$statics[__CLASS__]['fields']);
e501603b 1117 }
346aaaba 1118 return Civi::$statics[__CLASS__]['fields'];
e501603b 1119 }
c3fc2621 1120
e501603b 1121 /**
bd8e0b14 1122 * Return a mapping from field-name to the corresponding key (as used in fields()).
e501603b
TO
1123 *
1124 * @return array
bd8e0b14 1125 * Array(string $name => string $uniqueName).
e501603b 1126 */
c3fc2621 1127 public static function &fieldKeys() {
bd8e0b14
TO
1128 if (!isset(Civi::$statics[__CLASS__]['fieldKeys'])) {
1129 Civi::$statics[__CLASS__]['fieldKeys'] = array_flip(CRM_Utils_Array::collect('name', self::fields()));
e501603b 1130 }
bd8e0b14 1131 return Civi::$statics[__CLASS__]['fieldKeys'];
e501603b 1132 }
c3fc2621 1133
e501603b
TO
1134 /**
1135 * Returns the names of this table
1136 *
1137 * @return string
1138 */
c3fc2621 1139 public static function getTableName() {
e501603b
TO
1140 return self::$_tableName;
1141 }
c3fc2621 1142
e501603b
TO
1143 /**
1144 * Returns if this table needs to be logged
1145 *
c3fc2621 1146 * @return bool
e501603b 1147 */
c3fc2621 1148 public function getLog() {
e501603b
TO
1149 return self::$_log;
1150 }
c3fc2621 1151
e501603b
TO
1152 /**
1153 * Returns the list of fields that can be imported
1154 *
1155 * @param bool $prefix
1156 *
1157 * @return array
1158 */
c3fc2621
CW
1159 public static function &import($prefix = FALSE) {
1160 $r = CRM_Core_DAO_AllCoreTables::getImports(__CLASS__, 'action_schedule', $prefix, []);
60808919 1161 return $r;
e501603b 1162 }
c3fc2621 1163
e501603b
TO
1164 /**
1165 * Returns the list of fields that can be exported
1166 *
1167 * @param bool $prefix
1168 *
1169 * @return array
1170 */
c3fc2621
CW
1171 public static function &export($prefix = FALSE) {
1172 $r = CRM_Core_DAO_AllCoreTables::getExports(__CLASS__, 'action_schedule', $prefix, []);
60808919 1173 return $r;
e501603b 1174 }
c3fc2621 1175
e7a6b91a
AS
1176 /**
1177 * Returns the list of indices
c3fc2621
CW
1178 *
1179 * @param bool $localize
1180 *
1181 * @return array
e7a6b91a
AS
1182 */
1183 public static function indices($localize = TRUE) {
c3fc2621 1184 $indices = [];
e7a6b91a
AS
1185 return ($localize && !empty($indices)) ? CRM_Core_DAO_AllCoreTables::multilingualize(__CLASS__, $indices) : $indices;
1186 }
c3fc2621 1187
e501603b 1188}