Schema - Fix boolean fields in various tables
[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
c1e814c7 9 * (GenCodeChecksum:444acdd7b222ed9f593b0b84aebfb763)
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 *
c1e814c7 70 * @var bool|string
28979d65
CW
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 /**
c1e814c7 131 * @var bool|string
28979d65
CW
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 *
c1e814c7 194 * @var bool|string
28979d65
CW
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 *
c1e814c7 257 * @var bool|string
28979d65
CW
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?'),
c1e814c7 515 'required' => TRUE,
a36434b9 516 'where' => 'civicrm_action_schedule.limit_to',
c1e814c7 517 'default' => '1',
522a26c9 518 'table_name' => 'civicrm_action_schedule',
519 'entity' => 'ActionSchedule',
520 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 521 'localizable' => 0,
c23563e3
SL
522 'html' => [
523 'label' => ts("Limit To"),
524 ],
a9d0587b 525 'add' => '4.4',
c3fc2621
CW
526 ],
527 'entity_value' => [
e501603b
TO
528 'name' => 'entity_value',
529 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 530 'title' => ts('Entity Value'),
215b423e 531 'description' => ts('Entity value'),
e501603b
TO
532 'maxlength' => 255,
533 'size' => CRM_Utils_Type::HUGE,
a36434b9 534 'where' => 'civicrm_action_schedule.entity_value',
522a26c9 535 'table_name' => 'civicrm_action_schedule',
536 'entity' => 'ActionSchedule',
537 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 538 'localizable' => 0,
d5851cf2 539 'serialize' => self::SERIALIZE_SEPARATOR_TRIMMED,
c23563e3
SL
540 'html' => [
541 'label' => ts("Entity value"),
542 ],
a9d0587b 543 'add' => '3.4',
c3fc2621
CW
544 ],
545 'entity_status' => [
e501603b
TO
546 'name' => 'entity_status',
547 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 548 'title' => ts('Entity Status'),
215b423e 549 'description' => ts('Entity status'),
e501603b
TO
550 'maxlength' => 64,
551 'size' => CRM_Utils_Type::BIG,
a36434b9 552 'where' => 'civicrm_action_schedule.entity_status',
522a26c9 553 'table_name' => 'civicrm_action_schedule',
554 'entity' => 'ActionSchedule',
555 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 556 'localizable' => 0,
d5851cf2 557 'serialize' => self::SERIALIZE_SEPARATOR_TRIMMED,
c23563e3
SL
558 'html' => [
559 'label' => ts("Entity Status"),
560 ],
a9d0587b 561 'add' => '3.4',
c3fc2621
CW
562 ],
563 'start_action_offset' => [
e501603b
TO
564 'name' => 'start_action_offset',
565 'type' => CRM_Utils_Type::T_INT,
c3fc2621 566 'title' => ts('Start Action Offset'),
215b423e 567 'description' => ts('Reminder Interval.'),
a36434b9 568 'where' => 'civicrm_action_schedule.start_action_offset',
45a83e42 569 'default' => '0',
522a26c9 570 'table_name' => 'civicrm_action_schedule',
571 'entity' => 'ActionSchedule',
572 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 573 'localizable' => 0,
c23563e3
SL
574 'html' => [
575 'label' => ts("Start Action Offset"),
576 ],
a9d0587b 577 'add' => '3.4',
c3fc2621
CW
578 ],
579 'start_action_unit' => [
e501603b
TO
580 'name' => 'start_action_unit',
581 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 582 'title' => ts('Start Action Unit'),
215b423e 583 'description' => ts('Time units for reminder.'),
e501603b
TO
584 'maxlength' => 8,
585 'size' => CRM_Utils_Type::EIGHT,
a36434b9 586 'where' => 'civicrm_action_schedule.start_action_unit',
522a26c9 587 'table_name' => 'civicrm_action_schedule',
588 'entity' => 'ActionSchedule',
589 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 590 'localizable' => 0,
c3fc2621 591 'html' => [
e501603b 592 'type' => 'Select',
c23563e3 593 'label' => ts("Start Action Unit"),
c3fc2621
CW
594 ],
595 'pseudoconstant' => [
e501603b 596 'callback' => 'CRM_Core_SelectValues::getRecurringFrequencyUnits',
e6ca0a57 597 ],
a9d0587b 598 'add' => '3.4',
c3fc2621
CW
599 ],
600 'start_action_condition' => [
e501603b
TO
601 'name' => 'start_action_condition',
602 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 603 'title' => ts('Start Action Condition'),
215b423e 604 'description' => ts('Reminder Action'),
ed6e48d9 605 'maxlength' => 64,
606 'size' => CRM_Utils_Type::BIG,
a36434b9 607 'where' => 'civicrm_action_schedule.start_action_condition',
522a26c9 608 'table_name' => 'civicrm_action_schedule',
609 'entity' => 'ActionSchedule',
610 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 611 'localizable' => 0,
c23563e3
SL
612 'html' => [
613 'label' => ts("Start Action condition"),
614 ],
a9d0587b 615 'add' => '3.4',
c3fc2621
CW
616 ],
617 'start_action_date' => [
e501603b
TO
618 'name' => 'start_action_date',
619 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 620 'title' => ts('Start Action Date'),
215b423e 621 'description' => ts('Entity date'),
e501603b
TO
622 'maxlength' => 64,
623 'size' => CRM_Utils_Type::BIG,
a36434b9 624 'where' => 'civicrm_action_schedule.start_action_date',
522a26c9 625 'table_name' => 'civicrm_action_schedule',
626 'entity' => 'ActionSchedule',
627 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 628 'localizable' => 0,
c23563e3
SL
629 'html' => [
630 'label' => ts("Start Action Date"),
631 ],
a9d0587b 632 'add' => '3.4',
c3fc2621
CW
633 ],
634 'is_repeat' => [
e501603b
TO
635 'name' => 'is_repeat',
636 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 637 'title' => ts('Repeat?'),
c1e814c7 638 'required' => TRUE,
a36434b9 639 'where' => 'civicrm_action_schedule.is_repeat',
45a83e42 640 'default' => '0',
522a26c9 641 'table_name' => 'civicrm_action_schedule',
642 'entity' => 'ActionSchedule',
643 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 644 'localizable' => 0,
a9d0587b 645 'add' => '3.4',
c3fc2621
CW
646 ],
647 'repetition_frequency_unit' => [
e501603b
TO
648 'name' => 'repetition_frequency_unit',
649 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 650 'title' => ts('Repetition Frequency Unit'),
215b423e 651 'description' => ts('Time units for repetition of reminder.'),
e501603b
TO
652 'maxlength' => 8,
653 'size' => CRM_Utils_Type::EIGHT,
a36434b9 654 'where' => 'civicrm_action_schedule.repetition_frequency_unit',
522a26c9 655 'table_name' => 'civicrm_action_schedule',
656 'entity' => 'ActionSchedule',
657 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 658 'localizable' => 0,
c3fc2621 659 'html' => [
e501603b 660 'type' => 'Select',
c23563e3 661 'label' => ts("Repetition Frequency Unit"),
c3fc2621
CW
662 ],
663 'pseudoconstant' => [
e501603b 664 'callback' => 'CRM_Core_SelectValues::getRecurringFrequencyUnits',
e6ca0a57 665 ],
a9d0587b 666 'add' => '3.4',
c3fc2621
CW
667 ],
668 'repetition_frequency_interval' => [
e501603b
TO
669 'name' => 'repetition_frequency_interval',
670 'type' => CRM_Utils_Type::T_INT,
c3fc2621 671 'title' => ts('Repetition Frequency Interval'),
215b423e 672 'description' => ts('Time interval for repeating the reminder.'),
a36434b9 673 'where' => 'civicrm_action_schedule.repetition_frequency_interval',
45a83e42 674 'default' => '0',
522a26c9 675 'table_name' => 'civicrm_action_schedule',
676 'entity' => 'ActionSchedule',
677 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 678 'localizable' => 0,
c23563e3
SL
679 'html' => [
680 'label' => ts("Repetition Frequency Interval"),
681 ],
a9d0587b 682 'add' => '3.4',
c3fc2621
CW
683 ],
684 'end_frequency_unit' => [
e501603b
TO
685 'name' => 'end_frequency_unit',
686 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 687 'title' => ts('End Frequency Unit'),
215b423e 688 'description' => ts('Time units till repetition of reminder.'),
e501603b
TO
689 'maxlength' => 8,
690 'size' => CRM_Utils_Type::EIGHT,
a36434b9 691 'where' => 'civicrm_action_schedule.end_frequency_unit',
522a26c9 692 'table_name' => 'civicrm_action_schedule',
693 'entity' => 'ActionSchedule',
694 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 695 'localizable' => 0,
c3fc2621 696 'html' => [
e501603b 697 'type' => 'Select',
c23563e3 698 'label' => ts("End Frequency Unit"),
c3fc2621
CW
699 ],
700 'pseudoconstant' => [
e501603b 701 'callback' => 'CRM_Core_SelectValues::getRecurringFrequencyUnits',
e6ca0a57 702 ],
a9d0587b 703 'add' => '3.4',
c3fc2621
CW
704 ],
705 'end_frequency_interval' => [
e501603b
TO
706 'name' => 'end_frequency_interval',
707 'type' => CRM_Utils_Type::T_INT,
c3fc2621 708 'title' => ts('End Frequency Interval'),
215b423e 709 'description' => ts('Time interval till repeating the reminder.'),
a36434b9 710 'where' => 'civicrm_action_schedule.end_frequency_interval',
45a83e42 711 'default' => '0',
522a26c9 712 'table_name' => 'civicrm_action_schedule',
713 'entity' => 'ActionSchedule',
714 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 715 'localizable' => 0,
c23563e3
SL
716 'html' => [
717 'label' => ts("End Frequency Interval"),
718 ],
a9d0587b 719 'add' => '3.4',
c3fc2621
CW
720 ],
721 'end_action' => [
e501603b
TO
722 'name' => 'end_action',
723 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 724 'title' => ts('End Action'),
215b423e 725 'description' => ts('Reminder Action till repeating the reminder.'),
e501603b
TO
726 'maxlength' => 32,
727 'size' => CRM_Utils_Type::MEDIUM,
a36434b9 728 'where' => 'civicrm_action_schedule.end_action',
522a26c9 729 'table_name' => 'civicrm_action_schedule',
730 'entity' => 'ActionSchedule',
731 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 732 'localizable' => 0,
c23563e3
SL
733 'html' => [
734 'label' => ts("End Action"),
735 ],
a9d0587b 736 'add' => '3.4',
c3fc2621
CW
737 ],
738 'end_date' => [
e501603b
TO
739 'name' => 'end_date',
740 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 741 'title' => ts('End Date'),
215b423e 742 'description' => ts('Entity end date'),
e501603b
TO
743 'maxlength' => 64,
744 'size' => CRM_Utils_Type::BIG,
a36434b9 745 'where' => 'civicrm_action_schedule.end_date',
522a26c9 746 'table_name' => 'civicrm_action_schedule',
747 'entity' => 'ActionSchedule',
748 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 749 'localizable' => 0,
c23563e3
SL
750 'html' => [
751 'label' => ts("End Date"),
752 ],
a9d0587b 753 'add' => '3.4',
c3fc2621
CW
754 ],
755 'is_active' => [
e501603b
TO
756 'name' => 'is_active',
757 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 758 'title' => ts('Schedule is Active?'),
215b423e 759 'description' => ts('Is this option active?'),
c1e814c7 760 'required' => TRUE,
a36434b9 761 'where' => 'civicrm_action_schedule.is_active',
e501603b 762 'default' => '1',
522a26c9 763 'table_name' => 'civicrm_action_schedule',
764 'entity' => 'ActionSchedule',
765 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 766 'localizable' => 0,
a9d0587b 767 'add' => '3.4',
c3fc2621
CW
768 ],
769 'recipient_manual' => [
e501603b
TO
770 'name' => 'recipient_manual',
771 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 772 'title' => ts('Recipient Manual'),
215b423e 773 'description' => ts('Contact IDs to which reminder should be sent.'),
e501603b
TO
774 'maxlength' => 128,
775 'size' => CRM_Utils_Type::HUGE,
a36434b9 776 'where' => 'civicrm_action_schedule.recipient_manual',
522a26c9 777 'table_name' => 'civicrm_action_schedule',
778 'entity' => 'ActionSchedule',
779 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 780 'localizable' => 0,
d5851cf2 781 'serialize' => self::SERIALIZE_COMMA,
a9d0587b 782 'add' => '3.4',
c3fc2621
CW
783 ],
784 'recipient_listing' => [
e501603b
TO
785 'name' => 'recipient_listing',
786 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 787 'title' => ts('Recipient Listing'),
215b423e 788 'description' => ts('listing based on recipient field.'),
e501603b
TO
789 'maxlength' => 128,
790 'size' => CRM_Utils_Type::HUGE,
a36434b9 791 'where' => 'civicrm_action_schedule.recipient_listing',
522a26c9 792 'table_name' => 'civicrm_action_schedule',
793 'entity' => 'ActionSchedule',
794 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 795 'localizable' => 0,
a9d0587b 796 'add' => '4.1',
c3fc2621
CW
797 ],
798 'body_text' => [
e501603b
TO
799 'name' => 'body_text',
800 'type' => CRM_Utils_Type::T_LONGTEXT,
c3fc2621 801 'title' => ts('Reminder Text'),
215b423e 802 'description' => ts('Body of the mailing in text format.'),
a36434b9 803 'where' => 'civicrm_action_schedule.body_text',
522a26c9 804 'table_name' => 'civicrm_action_schedule',
805 'entity' => 'ActionSchedule',
806 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 807 'localizable' => 0,
a9d0587b 808 'add' => '3.4',
c3fc2621
CW
809 ],
810 'body_html' => [
e501603b
TO
811 'name' => 'body_html',
812 'type' => CRM_Utils_Type::T_LONGTEXT,
c3fc2621 813 'title' => ts('Reminder HTML'),
215b423e 814 'description' => ts('Body of the mailing in html format.'),
a36434b9 815 'where' => 'civicrm_action_schedule.body_html',
522a26c9 816 'table_name' => 'civicrm_action_schedule',
817 'entity' => 'ActionSchedule',
818 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 819 'localizable' => 0,
a9d0587b 820 'add' => '3.4',
c3fc2621
CW
821 ],
822 'sms_body_text' => [
e501603b
TO
823 'name' => 'sms_body_text',
824 'type' => CRM_Utils_Type::T_LONGTEXT,
c3fc2621 825 'title' => ts('SMS Reminder Text'),
215b423e 826 'description' => ts('Content of the SMS text.'),
a36434b9 827 'where' => 'civicrm_action_schedule.sms_body_text',
522a26c9 828 'table_name' => 'civicrm_action_schedule',
829 'entity' => 'ActionSchedule',
830 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 831 'localizable' => 0,
a9d0587b 832 'add' => '4.5',
c3fc2621
CW
833 ],
834 'subject' => [
e501603b
TO
835 'name' => 'subject',
836 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 837 'title' => ts('Reminder Subject'),
215b423e 838 'description' => ts('Subject of mailing'),
e501603b
TO
839 'maxlength' => 128,
840 'size' => CRM_Utils_Type::HUGE,
a36434b9 841 'where' => 'civicrm_action_schedule.subject',
522a26c9 842 'table_name' => 'civicrm_action_schedule',
843 'entity' => 'ActionSchedule',
844 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 845 'localizable' => 0,
a9d0587b 846 'add' => '3.4',
c3fc2621
CW
847 ],
848 'record_activity' => [
e501603b
TO
849 'name' => 'record_activity',
850 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 851 'title' => ts('Record Activity for Reminder?'),
215b423e 852 'description' => ts('Record Activity for this reminder?'),
c1e814c7 853 'required' => TRUE,
a36434b9 854 'where' => 'civicrm_action_schedule.record_activity',
c1e814c7 855 'default' => '0',
522a26c9 856 'table_name' => 'civicrm_action_schedule',
857 'entity' => 'ActionSchedule',
858 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 859 'localizable' => 0,
a9d0587b 860 'add' => '3.4',
c3fc2621
CW
861 ],
862 'mapping_id' => [
e501603b
TO
863 'name' => 'mapping_id',
864 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 865 'title' => ts('Reminder Mapping'),
215b423e 866 'description' => ts('Name/ID of the mapping to use on this table'),
e501603b
TO
867 'maxlength' => 64,
868 'size' => CRM_Utils_Type::BIG,
a36434b9 869 'where' => 'civicrm_action_schedule.mapping_id',
522a26c9 870 'table_name' => 'civicrm_action_schedule',
871 'entity' => 'ActionSchedule',
872 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 873 'localizable' => 0,
a9d0587b 874 'add' => '3.4',
c3fc2621
CW
875 ],
876 'group_id' => [
e501603b
TO
877 'name' => 'group_id',
878 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 879 'title' => ts('Group ID'),
215b423e 880 'description' => ts('FK to Group'),
a36434b9 881 'where' => 'civicrm_action_schedule.group_id',
522a26c9 882 'table_name' => 'civicrm_action_schedule',
883 'entity' => 'ActionSchedule',
884 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 885 'localizable' => 0,
e501603b 886 'FKClassName' => 'CRM_Contact_DAO_Group',
c3fc2621 887 'html' => [
e501603b 888 'type' => 'Select',
2cbbebe8 889 'label' => ts("Group"),
c3fc2621
CW
890 ],
891 'pseudoconstant' => [
e501603b
TO
892 'table' => 'civicrm_group',
893 'keyColumn' => 'id',
894 'labelColumn' => 'title',
e6ca0a57 895 ],
a9d0587b 896 'add' => '3.4',
c3fc2621
CW
897 ],
898 'msg_template_id' => [
e501603b
TO
899 'name' => 'msg_template_id',
900 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 901 'title' => ts('Message Template ID'),
215b423e 902 'description' => ts('FK to the message template.'),
a36434b9 903 'where' => 'civicrm_action_schedule.msg_template_id',
522a26c9 904 'table_name' => 'civicrm_action_schedule',
905 'entity' => 'ActionSchedule',
906 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 907 'localizable' => 0,
e501603b 908 'FKClassName' => 'CRM_Core_DAO_MessageTemplate',
2cbbebe8
A
909 'html' => [
910 'label' => ts("Message Template"),
911 ],
a9d0587b 912 'add' => NULL,
c3fc2621
CW
913 ],
914 'sms_template_id' => [
e501603b
TO
915 'name' => 'sms_template_id',
916 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 917 'title' => ts('SMS Template ID'),
215b423e 918 'description' => ts('FK to the message template.'),
a36434b9 919 'where' => 'civicrm_action_schedule.sms_template_id',
522a26c9 920 'table_name' => 'civicrm_action_schedule',
921 'entity' => 'ActionSchedule',
922 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 923 'localizable' => 0,
e501603b 924 'FKClassName' => 'CRM_Core_DAO_MessageTemplate',
2cbbebe8
A
925 'html' => [
926 'label' => ts("SMS Template"),
927 ],
a9d0587b 928 'add' => NULL,
c3fc2621
CW
929 ],
930 'absolute_date' => [
e501603b
TO
931 'name' => 'absolute_date',
932 'type' => CRM_Utils_Type::T_DATE,
c3fc2621 933 'title' => ts('Fixed Date for Reminder'),
215b423e 934 'description' => ts('Date on which the reminder be sent.'),
a36434b9 935 'where' => 'civicrm_action_schedule.absolute_date',
522a26c9 936 'table_name' => 'civicrm_action_schedule',
937 'entity' => 'ActionSchedule',
938 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 939 'localizable' => 0,
a9d0587b 940 'add' => '4.1',
c3fc2621
CW
941 ],
942 'from_name' => [
e501603b
TO
943 'name' => 'from_name',
944 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 945 'title' => ts('Reminder from Name'),
215b423e 946 'description' => ts('Name in "from" field'),
e501603b
TO
947 'maxlength' => 255,
948 'size' => CRM_Utils_Type::HUGE,
a36434b9 949 'where' => 'civicrm_action_schedule.from_name',
522a26c9 950 'table_name' => 'civicrm_action_schedule',
951 'entity' => 'ActionSchedule',
952 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 953 'localizable' => 0,
a9d0587b 954 'add' => '4.5',
c3fc2621
CW
955 ],
956 'from_email' => [
e501603b
TO
957 'name' => 'from_email',
958 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 959 'title' => ts('Reminder From Email'),
215b423e 960 'description' => ts('Email address in "from" field'),
e501603b
TO
961 'maxlength' => 255,
962 'size' => CRM_Utils_Type::HUGE,
a36434b9 963 'where' => 'civicrm_action_schedule.from_email',
522a26c9 964 'table_name' => 'civicrm_action_schedule',
965 'entity' => 'ActionSchedule',
966 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 967 'localizable' => 0,
a9d0587b 968 'add' => '4.5',
c3fc2621
CW
969 ],
970 'mode' => [
e501603b
TO
971 'name' => 'mode',
972 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 973 'title' => ts('Message Mode'),
215b423e 974 'description' => ts('Send the message as email or sms or both.'),
e501603b
TO
975 'maxlength' => 128,
976 'size' => CRM_Utils_Type::HUGE,
a36434b9 977 'where' => 'civicrm_action_schedule.mode',
e501603b 978 'default' => 'Email',
522a26c9 979 'table_name' => 'civicrm_action_schedule',
980 'entity' => 'ActionSchedule',
981 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 982 'localizable' => 0,
c3fc2621 983 'html' => [
e501603b 984 'type' => 'Select',
c3fc2621
CW
985 ],
986 'pseudoconstant' => [
e501603b
TO
987 'optionGroupName' => 'msg_mode',
988 'optionEditPath' => 'civicrm/admin/options/msg_mode',
e6ca0a57 989 ],
a9d0587b 990 'add' => '4.5',
c3fc2621
CW
991 ],
992 'sms_provider_id' => [
e501603b
TO
993 'name' => 'sms_provider_id',
994 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 995 'title' => ts('SMS Provider ID'),
a36434b9 996 'where' => 'civicrm_action_schedule.sms_provider_id',
522a26c9 997 'table_name' => 'civicrm_action_schedule',
998 'entity' => 'ActionSchedule',
999 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 1000 'localizable' => 0,
e501603b 1001 'FKClassName' => 'CRM_SMS_DAO_Provider',
c3fc2621 1002 'html' => [
e501603b 1003 'type' => 'Select',
2cbbebe8 1004 'label' => ts("SMS Provider"),
c3fc2621 1005 ],
a9d0587b 1006 'add' => '4.5',
c3fc2621
CW
1007 ],
1008 'used_for' => [
e501603b
TO
1009 'name' => 'used_for',
1010 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1011 'title' => ts('Used For'),
215b423e 1012 'description' => ts('Used for repeating entity'),
e501603b
TO
1013 'maxlength' => 64,
1014 'size' => CRM_Utils_Type::BIG,
a36434b9 1015 'where' => 'civicrm_action_schedule.used_for',
522a26c9 1016 'table_name' => 'civicrm_action_schedule',
1017 'entity' => 'ActionSchedule',
1018 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 1019 'localizable' => 0,
c23563e3
SL
1020 'html' => [
1021 'label' => ts("Used For"),
1022 ],
a9d0587b 1023 'add' => '4.6',
c3fc2621
CW
1024 ],
1025 'filter_contact_language' => [
e501603b
TO
1026 'name' => 'filter_contact_language',
1027 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1028 'title' => ts('Filter Contact Language'),
215b423e 1029 'description' => ts('Used for multilingual installation'),
e501603b
TO
1030 'maxlength' => 128,
1031 'size' => CRM_Utils_Type::HUGE,
a36434b9 1032 'where' => 'civicrm_action_schedule.filter_contact_language',
522a26c9 1033 'table_name' => 'civicrm_action_schedule',
1034 'entity' => 'ActionSchedule',
1035 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 1036 'localizable' => 0,
c23563e3
SL
1037 'html' => [
1038 'label' => ts("Filter Contact Language"),
1039 ],
a9d0587b 1040 'add' => '4.7',
c3fc2621
CW
1041 ],
1042 'communication_language' => [
e501603b
TO
1043 'name' => 'communication_language',
1044 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1045 'title' => ts('Communication Language'),
215b423e 1046 'description' => ts('Used for multilingual installation'),
e501603b
TO
1047 'maxlength' => 8,
1048 'size' => CRM_Utils_Type::EIGHT,
a36434b9 1049 'where' => 'civicrm_action_schedule.communication_language',
522a26c9 1050 'table_name' => 'civicrm_action_schedule',
1051 'entity' => 'ActionSchedule',
1052 'bao' => 'CRM_Core_BAO_ActionSchedule',
6a7e5e5d 1053 'localizable' => 0,
c23563e3
SL
1054 'html' => [
1055 'label' => ts("Communication Language"),
1056 ],
a9d0587b 1057 'add' => '4.7',
c3fc2621 1058 ],
6a62a64e 1059 'action_schedule_created_date' => [
1060 'name' => 'created_date',
1061 'type' => CRM_Utils_Type::T_TIMESTAMP,
1062 'title' => ts('Created Date'),
1063 'description' => ts('When was the scheduled reminder created.'),
1064 'required' => FALSE,
1065 'where' => 'civicrm_action_schedule.created_date',
1066 'export' => TRUE,
1067 'default' => 'CURRENT_TIMESTAMP',
1068 'table_name' => 'civicrm_action_schedule',
1069 'entity' => 'ActionSchedule',
1070 'bao' => 'CRM_Core_BAO_ActionSchedule',
1071 'localizable' => 0,
1072 'add' => '5.34',
1073 ],
1074 'modified_date' => [
1075 'name' => 'modified_date',
1076 'type' => CRM_Utils_Type::T_TIMESTAMP,
1077 'title' => ts('Modified Date'),
1078 'description' => ts('When the reminder was created or modified.'),
1079 'required' => FALSE,
1080 'where' => 'civicrm_action_schedule.modified_date',
1081 'default' => 'CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP',
1082 'table_name' => 'civicrm_action_schedule',
1083 'entity' => 'ActionSchedule',
1084 'bao' => 'CRM_Core_BAO_ActionSchedule',
1085 'localizable' => 0,
c23563e3
SL
1086 'html' => [
1087 'label' => ts("Modified Date"),
1088 ],
a0e733f3 1089 'readonly' => TRUE,
6a62a64e 1090 'add' => '5.34',
1091 ],
1092 'action_schedule_effective_start_date' => [
1093 'name' => 'effective_start_date',
1094 'type' => CRM_Utils_Type::T_TIMESTAMP,
1095 'title' => ts('Effective start date'),
1096 'description' => ts('Earliest date to consider start events from.'),
1097 'required' => FALSE,
1098 'where' => 'civicrm_action_schedule.effective_start_date',
1099 'export' => TRUE,
1100 'table_name' => 'civicrm_action_schedule',
1101 'entity' => 'ActionSchedule',
1102 'bao' => 'CRM_Core_BAO_ActionSchedule',
1103 'localizable' => 0,
1104 'add' => '5.34',
1105 ],
1106 'action_schedule_effective_end_date' => [
1107 'name' => 'effective_end_date',
1108 'type' => CRM_Utils_Type::T_TIMESTAMP,
1109 'title' => ts('Effective end date'),
1110 'description' => ts('Latest date to consider end events from.'),
1111 'required' => FALSE,
1112 'where' => 'civicrm_action_schedule.effective_end_date',
1113 'export' => TRUE,
1114 'table_name' => 'civicrm_action_schedule',
1115 'entity' => 'ActionSchedule',
1116 'bao' => 'CRM_Core_BAO_ActionSchedule',
1117 'localizable' => 0,
1118 'add' => '5.34',
1119 ],
c3fc2621 1120 ];
346aaaba 1121 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'fields_callback', Civi::$statics[__CLASS__]['fields']);
e501603b 1122 }
346aaaba 1123 return Civi::$statics[__CLASS__]['fields'];
e501603b 1124 }
c3fc2621 1125
e501603b 1126 /**
bd8e0b14 1127 * Return a mapping from field-name to the corresponding key (as used in fields()).
e501603b
TO
1128 *
1129 * @return array
bd8e0b14 1130 * Array(string $name => string $uniqueName).
e501603b 1131 */
c3fc2621 1132 public static function &fieldKeys() {
bd8e0b14
TO
1133 if (!isset(Civi::$statics[__CLASS__]['fieldKeys'])) {
1134 Civi::$statics[__CLASS__]['fieldKeys'] = array_flip(CRM_Utils_Array::collect('name', self::fields()));
e501603b 1135 }
bd8e0b14 1136 return Civi::$statics[__CLASS__]['fieldKeys'];
e501603b 1137 }
c3fc2621 1138
e501603b
TO
1139 /**
1140 * Returns the names of this table
1141 *
1142 * @return string
1143 */
c3fc2621 1144 public static function getTableName() {
e501603b
TO
1145 return self::$_tableName;
1146 }
c3fc2621 1147
e501603b
TO
1148 /**
1149 * Returns if this table needs to be logged
1150 *
c3fc2621 1151 * @return bool
e501603b 1152 */
c3fc2621 1153 public function getLog() {
e501603b
TO
1154 return self::$_log;
1155 }
c3fc2621 1156
e501603b
TO
1157 /**
1158 * Returns the list of fields that can be imported
1159 *
1160 * @param bool $prefix
1161 *
1162 * @return array
1163 */
c3fc2621
CW
1164 public static function &import($prefix = FALSE) {
1165 $r = CRM_Core_DAO_AllCoreTables::getImports(__CLASS__, 'action_schedule', $prefix, []);
60808919 1166 return $r;
e501603b 1167 }
c3fc2621 1168
e501603b
TO
1169 /**
1170 * Returns the list of fields that can be exported
1171 *
1172 * @param bool $prefix
1173 *
1174 * @return array
1175 */
c3fc2621
CW
1176 public static function &export($prefix = FALSE) {
1177 $r = CRM_Core_DAO_AllCoreTables::getExports(__CLASS__, 'action_schedule', $prefix, []);
60808919 1178 return $r;
e501603b 1179 }
c3fc2621 1180
e7a6b91a
AS
1181 /**
1182 * Returns the list of indices
c3fc2621
CW
1183 *
1184 * @param bool $localize
1185 *
1186 * @return array
e7a6b91a
AS
1187 */
1188 public static function indices($localize = TRUE) {
c3fc2621 1189 $indices = [];
e7a6b91a
AS
1190 return ($localize && !empty($indices)) ? CRM_Core_DAO_AllCoreTables::multilingualize(__CLASS__, $indices) : $indices;
1191 }
c3fc2621 1192
e501603b 1193}