Merge pull request #21537 from eileenmcnaughton/ev_token2
[civicrm-core.git] / CRM / Event / DAO / Event.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/Event/Event.xml
8 * DO NOT EDIT. Generated by CRM_Core_CodeGen
25ad69f2 9 * (GenCodeChecksum:51b2702ee6856d74a9f38e9cf86da5bf)
e501603b 10 */
c3fc2621 11
f41f0342 12/**
c3fc2621 13 * Database access object for the Event entity.
f41f0342 14 */
e501603b 15class CRM_Event_DAO_Event extends CRM_Core_DAO {
929a1c14
CW
16 const EXT = 'civicrm';
17 const TABLE_ADDED = '1.7';
d31fb4e3 18 const COMPONENT = 'CiviEvent';
c3fc2621 19
e501603b 20 /**
f41f0342 21 * Static instance to hold the table name.
e501603b
TO
22 *
23 * @var string
24 */
fa45b5b9 25 public static $_tableName = 'civicrm_event';
c3fc2621 26
449c4e6b
CW
27 /**
28 * Icon associated with this entity.
29 *
30 * @var string
31 */
32 public static $_icon = 'fa-calendar';
33
8ab43c93
CW
34 /**
35 * Field to show when displaying a record.
36 *
37 * @var string
38 */
39 public static $_labelField = 'title';
40
e501603b 41 /**
f41f0342 42 * Should CiviCRM log any modifications to this table in the civicrm_log table.
e501603b 43 *
c3fc2621 44 * @var bool
e501603b 45 */
fa45b5b9 46 public static $_log = TRUE;
c3fc2621 47
a7bd99ff
CW
48 /**
49 * Paths for accessing this entity in the UI.
50 *
51 * @var string[]
52 */
53 protected static $_paths = [
5c385299 54 'add' => 'civicrm/event/add?reset=1',
a7bd99ff
CW
55 'view' => 'civicrm/event/info?reset=1&id=[id]',
56 ];
57
e501603b
TO
58 /**
59 * Event
60 *
e6ca0a57 61 * @var int
e501603b
TO
62 */
63 public $id;
c3fc2621 64
e501603b
TO
65 /**
66 * Event Title (e.g. Fall Fundraiser Dinner)
67 *
68 * @var string
69 */
70 public $title;
c3fc2621 71
e501603b
TO
72 /**
73 * Brief summary of event. Text and html allowed. Displayed on Event Registration form and can be used on other CMS pages which need an event summary.
74 *
75 * @var text
76 */
77 public $summary;
c3fc2621 78
e501603b
TO
79 /**
80 * Full description of event. Text and html allowed. Displayed on built-in Event Information screens.
81 *
82 * @var text
83 */
84 public $description;
c3fc2621 85
e501603b
TO
86 /**
87 * Event Type ID.Implicit FK to civicrm_option_value where option_group = event_type.
88 *
e6ca0a57 89 * @var int
e501603b
TO
90 */
91 public $event_type_id;
c3fc2621 92
e501603b
TO
93 /**
94 * Should we expose the participant list? Implicit FK to civicrm_option_value where option_group = participant_listing.
95 *
e6ca0a57 96 * @var int
e501603b
TO
97 */
98 public $participant_listing_id;
c3fc2621 99
e501603b
TO
100 /**
101 * Public events will be included in the iCal feeds. Access to private event information may be limited using ACLs.
102 *
e6ca0a57 103 * @var bool
e501603b
TO
104 */
105 public $is_public;
c3fc2621 106
e501603b
TO
107 /**
108 * Date and time that event starts.
109 *
110 * @var datetime
111 */
112 public $start_date;
c3fc2621 113
e501603b
TO
114 /**
115 * Date and time that event ends. May be NULL if no defined end date/time
116 *
117 * @var datetime
118 */
119 public $end_date;
c3fc2621 120
e501603b
TO
121 /**
122 * If true, include registration link on Event Info page.
123 *
e6ca0a57 124 * @var bool
e501603b
TO
125 */
126 public $is_online_registration;
c3fc2621 127
e501603b
TO
128 /**
129 * Text for link to Event Registration form which is displayed on Event Information screen when is_online_registration is true.
130 *
131 * @var string
132 */
133 public $registration_link_text;
c3fc2621 134
e501603b
TO
135 /**
136 * Date and time that online registration starts.
137 *
138 * @var datetime
139 */
140 public $registration_start_date;
c3fc2621 141
e501603b
TO
142 /**
143 * Date and time that online registration ends.
144 *
145 * @var datetime
146 */
147 public $registration_end_date;
c3fc2621 148
e501603b
TO
149 /**
150 * Maximum number of registered participants to allow. After max is reached, a custom Event Full message is displayed. If NULL, allow unlimited number of participants.
151 *
e6ca0a57 152 * @var int
e501603b
TO
153 */
154 public $max_participants;
c3fc2621 155
e501603b
TO
156 /**
157 * Message to display on Event Information page and INSTEAD OF Event Registration form if maximum participants are signed up. Can include email address/info about getting on a waiting list, etc. Text and html allowed.
158 *
159 * @var text
160 */
161 public $event_full_text;
c3fc2621 162
e501603b
TO
163 /**
164 * If true, one or more fee amounts must be set and a Payment Processor must be configured for Online Event Registration.
165 *
e6ca0a57 166 * @var bool
e501603b
TO
167 */
168 public $is_monetary;
c3fc2621 169
e501603b
TO
170 /**
171 * Financial type assigned to paid event registrations for this event. Required if is_monetary is true.
172 *
e6ca0a57 173 * @var int
e501603b
TO
174 */
175 public $financial_type_id;
c3fc2621 176
e501603b
TO
177 /**
178 * Payment Processors configured for this Event (if is_monetary is true)
179 *
180 * @var string
181 */
182 public $payment_processor;
c3fc2621 183
e501603b
TO
184 /**
185 * Include a map block on the Event Information page when geocode info is available and a mapping provider has been specified?
186 *
e6ca0a57 187 * @var bool
e501603b
TO
188 */
189 public $is_map;
c3fc2621 190
e501603b
TO
191 /**
192 * Is this Event enabled or disabled/cancelled?
193 *
e6ca0a57 194 * @var bool
e501603b
TO
195 */
196 public $is_active;
c3fc2621 197
e501603b 198 /**
e501603b
TO
199 * @var string
200 */
201 public $fee_label;
c3fc2621 202
e501603b
TO
203 /**
204 * If true, show event location.
205 *
e6ca0a57 206 * @var bool
e501603b
TO
207 */
208 public $is_show_location;
c3fc2621 209
e501603b
TO
210 /**
211 * FK to Location Block ID
212 *
e6ca0a57 213 * @var int
e501603b
TO
214 */
215 public $loc_block_id;
c3fc2621 216
e501603b
TO
217 /**
218 * Participant role ID. Implicit FK to civicrm_option_value where option_group = participant_role.
219 *
e6ca0a57 220 * @var int
e501603b
TO
221 */
222 public $default_role_id;
c3fc2621 223
e501603b
TO
224 /**
225 * Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.
226 *
227 * @var text
228 */
229 public $intro_text;
c3fc2621 230
e501603b
TO
231 /**
232 * Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.
233 *
234 * @var text
235 */
236 public $footer_text;
c3fc2621 237
e501603b
TO
238 /**
239 * Title for Confirmation page.
240 *
241 * @var string
242 */
243 public $confirm_title;
c3fc2621 244
e501603b
TO
245 /**
246 * Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.
247 *
248 * @var text
249 */
250 public $confirm_text;
c3fc2621 251
e501603b
TO
252 /**
253 * Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.
254 *
255 * @var text
256 */
257 public $confirm_footer_text;
c3fc2621 258
e501603b
TO
259 /**
260 * If true, confirmation is automatically emailed to contact on successful registration.
261 *
e6ca0a57 262 * @var bool
e501603b
TO
263 */
264 public $is_email_confirm;
c3fc2621 265
e501603b
TO
266 /**
267 * text to include above standard event info on confirmation email. emails are text-only, so do not allow html for now
268 *
269 * @var text
270 */
271 public $confirm_email_text;
c3fc2621 272
e501603b
TO
273 /**
274 * FROM email name used for confirmation emails.
275 *
276 * @var string
277 */
278 public $confirm_from_name;
c3fc2621 279
e501603b
TO
280 /**
281 * FROM email address used for confirmation emails.
282 *
283 * @var string
284 */
285 public $confirm_from_email;
c3fc2621 286
e501603b
TO
287 /**
288 * comma-separated list of email addresses to cc each time a confirmation is sent
289 *
290 * @var string
291 */
292 public $cc_confirm;
c3fc2621 293
e501603b
TO
294 /**
295 * comma-separated list of email addresses to bcc each time a confirmation is sent
296 *
297 * @var string
298 */
299 public $bcc_confirm;
c3fc2621 300
e501603b
TO
301 /**
302 * FK to civicrm_option_value.
303 *
e6ca0a57 304 * @var int
e501603b
TO
305 */
306 public $default_fee_id;
c3fc2621 307
e501603b
TO
308 /**
309 * FK to civicrm_option_value.
310 *
e6ca0a57 311 * @var int
e501603b
TO
312 */
313 public $default_discount_fee_id;
c3fc2621 314
e501603b
TO
315 /**
316 * Title for ThankYou page.
317 *
318 * @var string
319 */
320 public $thankyou_title;
c3fc2621 321
e501603b
TO
322 /**
323 * ThankYou Text.
324 *
325 * @var text
326 */
327 public $thankyou_text;
c3fc2621 328
e501603b
TO
329 /**
330 * Footer message.
331 *
332 * @var text
333 */
334 public $thankyou_footer_text;
c3fc2621 335
e501603b
TO
336 /**
337 * if true - allows the user to send payment directly to the org later
338 *
e6ca0a57 339 * @var bool
e501603b
TO
340 */
341 public $is_pay_later;
c3fc2621 342
e501603b
TO
343 /**
344 * The text displayed to the user in the main form
345 *
346 * @var text
347 */
348 public $pay_later_text;
c3fc2621 349
e501603b
TO
350 /**
351 * The receipt sent to the user instead of the normal receipt text
352 *
353 * @var text
354 */
355 public $pay_later_receipt;
c3fc2621 356
e501603b
TO
357 /**
358 * is partial payment enabled for this event
359 *
e6ca0a57 360 * @var bool
e501603b
TO
361 */
362 public $is_partial_payment;
c3fc2621 363
e501603b
TO
364 /**
365 * Initial amount label for partial payment
366 *
367 * @var string
368 */
369 public $initial_amount_label;
c3fc2621 370
e501603b
TO
371 /**
372 * Initial amount help text for partial payment
373 *
374 * @var text
375 */
376 public $initial_amount_help_text;
c3fc2621 377
e501603b
TO
378 /**
379 * Minimum initial amount for partial payment
380 *
381 * @var float
382 */
383 public $min_initial_amount;
c3fc2621 384
e501603b
TO
385 /**
386 * if true - allows the user to register multiple participants for event
387 *
e6ca0a57 388 * @var bool
e501603b
TO
389 */
390 public $is_multiple_registrations;
c3fc2621 391
e501603b
TO
392 /**
393 * Maximum number of additional participants that can be registered on a single booking
394 *
e6ca0a57 395 * @var int
e501603b
TO
396 */
397 public $max_additional_participants;
c3fc2621 398
e501603b
TO
399 /**
400 * if true - allows the user to register multiple registrations from same email address.
401 *
e6ca0a57 402 * @var bool
e501603b
TO
403 */
404 public $allow_same_participant_emails;
c3fc2621 405
e501603b
TO
406 /**
407 * Whether the event has waitlist support.
408 *
e6ca0a57 409 * @var bool
e501603b
TO
410 */
411 public $has_waitlist;
c3fc2621 412
e501603b
TO
413 /**
414 * Whether participants require approval before they can finish registering.
415 *
e6ca0a57 416 * @var bool
e501603b
TO
417 */
418 public $requires_approval;
c3fc2621 419
e501603b
TO
420 /**
421 * Expire pending but unconfirmed registrations after this many hours.
422 *
e6ca0a57 423 * @var int
e501603b
TO
424 */
425 public $expiration_time;
c3fc2621 426
e501603b
TO
427 /**
428 * Allow self service cancellation or transfer for event?
429 *
e6ca0a57 430 * @var bool
e501603b
TO
431 */
432 public $allow_selfcancelxfer;
c3fc2621 433
e501603b
TO
434 /**
435 * Number of hours prior to event start date to allow self-service cancellation or transfer.
436 *
e6ca0a57 437 * @var int
e501603b
TO
438 */
439 public $selfcancelxfer_time;
c3fc2621 440
e501603b
TO
441 /**
442 * Text to display when the event is full, but participants can signup for a waitlist.
443 *
444 * @var text
445 */
446 public $waitlist_text;
c3fc2621 447
e501603b
TO
448 /**
449 * Text to display when the approval is required to complete registration for an event.
450 *
451 * @var text
452 */
453 public $approval_req_text;
c3fc2621 454
e501603b
TO
455 /**
456 * whether the event has template
457 *
e6ca0a57 458 * @var bool
e501603b
TO
459 */
460 public $is_template;
c3fc2621 461
e501603b
TO
462 /**
463 * Event Template Title
464 *
465 * @var string
466 */
467 public $template_title;
c3fc2621 468
e501603b
TO
469 /**
470 * FK to civicrm_contact, who created this event
471 *
e6ca0a57 472 * @var int
e501603b
TO
473 */
474 public $created_id;
c3fc2621 475
e501603b
TO
476 /**
477 * Date and time that event was created.
478 *
479 * @var datetime
480 */
481 public $created_date;
c3fc2621 482
e501603b
TO
483 /**
484 * 3 character string, value from config setting or input via user.
485 *
486 * @var string
487 */
488 public $currency;
c3fc2621 489
e501603b
TO
490 /**
491 * The campaign for which this event has been created.
492 *
e6ca0a57 493 * @var int
e501603b
TO
494 */
495 public $campaign_id;
c3fc2621 496
e501603b
TO
497 /**
498 * Can people share the event through social media?
499 *
e6ca0a57 500 * @var bool
e501603b
TO
501 */
502 public $is_share;
c3fc2621 503
e501603b
TO
504 /**
505 * If false, the event booking confirmation screen gets skipped
506 *
e6ca0a57 507 * @var bool
e501603b
TO
508 */
509 public $is_confirm_enabled;
c3fc2621 510
e501603b
TO
511 /**
512 * Implicit FK to civicrm_event: parent event
513 *
e6ca0a57 514 * @var int
e501603b
TO
515 */
516 public $parent_event_id;
c3fc2621 517
e501603b
TO
518 /**
519 * Subevent slot label. Implicit FK to civicrm_option_value where option_group = conference_slot.
520 *
e6ca0a57 521 * @var int
e501603b
TO
522 */
523 public $slot_label_id;
c3fc2621 524
e501603b
TO
525 /**
526 * Rule to use when matching registrations for this event
527 *
e6ca0a57 528 * @var int
e501603b
TO
529 */
530 public $dedupe_rule_group_id;
c3fc2621 531
e501603b
TO
532 /**
533 * if true than billing block is required this event
534 *
e6ca0a57 535 * @var bool
e501603b
TO
536 */
537 public $is_billing_required;
c3fc2621 538
e501603b 539 /**
f41f0342 540 * Class constructor.
e501603b 541 */
c3fc2621 542 public function __construct() {
e501603b
TO
543 $this->__table = 'civicrm_event';
544 parent::__construct();
545 }
c3fc2621 546
449c4e6b
CW
547 /**
548 * Returns localized title of this entity.
7b66c3b5
AH
549 *
550 * @param bool $plural
551 * Whether to return the plural version of the title.
449c4e6b 552 */
7b66c3b5
AH
553 public static function getEntityTitle($plural = FALSE) {
554 return $plural ? ts('Events') : ts('Event');
449c4e6b
CW
555 }
556
2562d09a
CW
557 /**
558 * Returns user-friendly description of this entity.
559 *
560 * @return string
561 */
562 public static function getEntityDescription() {
563 return ts('Scheduled in-person or online events which contacts can register for and attend.');
564 }
565
e501603b 566 /**
f41f0342 567 * Returns foreign keys and entity references.
e501603b
TO
568 *
569 * @return array
570 * [CRM_Core_Reference_Interface]
571 */
c3fc2621 572 public static function getReferenceColumns() {
346aaaba 573 if (!isset(Civi::$statics[__CLASS__]['links'])) {
fa45b5b9 574 Civi::$statics[__CLASS__]['links'] = static::createReferenceColumns(__CLASS__);
c3fc2621
CW
575 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'loc_block_id', 'civicrm_loc_block', 'id');
576 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'created_id', 'civicrm_contact', 'id');
577 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'campaign_id', 'civicrm_campaign', 'id');
578 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'dedupe_rule_group_id', 'civicrm_dedupe_rule_group', 'id');
346aaaba 579 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'links_callback', Civi::$statics[__CLASS__]['links']);
e501603b 580 }
346aaaba 581 return Civi::$statics[__CLASS__]['links'];
e501603b 582 }
c3fc2621 583
e501603b
TO
584 /**
585 * Returns all the column names of this table
586 *
587 * @return array
588 */
c3fc2621 589 public static function &fields() {
346aaaba 590 if (!isset(Civi::$statics[__CLASS__]['fields'])) {
c3fc2621
CW
591 Civi::$statics[__CLASS__]['fields'] = [
592 'id' => [
e501603b
TO
593 'name' => 'id',
594 'type' => CRM_Utils_Type::T_INT,
c3fc2621 595 'title' => ts('Event ID'),
215b423e 596 'description' => ts('Event'),
c3fc2621 597 'required' => TRUE,
a36434b9 598 'where' => 'civicrm_event.id',
522a26c9 599 'table_name' => 'civicrm_event',
600 'entity' => 'Event',
601 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 602 'localizable' => 0,
2cbbebe8
A
603 'html' => [
604 'type' => 'Number',
605 ],
1fe423d6 606 'readonly' => TRUE,
a9d0587b 607 'add' => '1.7',
c3fc2621
CW
608 ],
609 'event_title' => [
e501603b
TO
610 'name' => 'title',
611 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 612 'title' => ts('Event Title'),
215b423e 613 'description' => ts('Event Title (e.g. Fall Fundraiser Dinner)'),
e501603b
TO
614 'maxlength' => 255,
615 'size' => CRM_Utils_Type::HUGE,
c3fc2621 616 'import' => TRUE,
e501603b
TO
617 'where' => 'civicrm_event.title',
618 'headerPattern' => '/(event.)?title$/i',
c3fc2621 619 'export' => TRUE,
522a26c9 620 'table_name' => 'civicrm_event',
621 'entity' => 'Event',
622 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 623 'localizable' => 1,
c3fc2621 624 'html' => [
e501603b 625 'type' => 'Text',
c3fc2621 626 ],
a9d0587b 627 'add' => '1.7',
c3fc2621
CW
628 ],
629 'summary' => [
e501603b
TO
630 'name' => 'summary',
631 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 632 'title' => ts('Event Summary'),
215b423e 633 'description' => ts('Brief summary of event. Text and html allowed. Displayed on Event Registration form and can be used on other CMS pages which need an event summary.'),
e501603b
TO
634 'rows' => 4,
635 'cols' => 60,
a36434b9 636 'where' => 'civicrm_event.summary',
522a26c9 637 'table_name' => 'civicrm_event',
638 'entity' => 'Event',
639 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 640 'localizable' => 1,
c3fc2621 641 'html' => [
e501603b 642 'type' => 'TextArea',
c3fc2621 643 ],
a9d0587b 644 'add' => '1.7',
c3fc2621
CW
645 ],
646 'event_description' => [
e501603b
TO
647 'name' => 'description',
648 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 649 'title' => ts('Event Description'),
215b423e 650 'description' => ts('Full description of event. Text and html allowed. Displayed on built-in Event Information screens.'),
e501603b
TO
651 'rows' => 8,
652 'cols' => 60,
a36434b9 653 'where' => 'civicrm_event.description',
522a26c9 654 'table_name' => 'civicrm_event',
655 'entity' => 'Event',
656 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 657 'localizable' => 1,
c3fc2621 658 'html' => [
efb34c99 659 'type' => 'RichTextEditor',
c3fc2621 660 ],
a9d0587b 661 'add' => '1.7',
c3fc2621
CW
662 ],
663 'event_type_id' => [
e501603b
TO
664 'name' => 'event_type_id',
665 'type' => CRM_Utils_Type::T_INT,
c3fc2621 666 'title' => ts('Event Type'),
215b423e 667 'description' => ts('Event Type ID.Implicit FK to civicrm_option_value where option_group = event_type.'),
a36434b9 668 'where' => 'civicrm_event.event_type_id',
45a83e42 669 'default' => '0',
522a26c9 670 'table_name' => 'civicrm_event',
671 'entity' => 'Event',
672 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 673 'localizable' => 0,
c3fc2621 674 'html' => [
e501603b 675 'type' => 'Select',
c3fc2621
CW
676 ],
677 'pseudoconstant' => [
e501603b
TO
678 'optionGroupName' => 'event_type',
679 'optionEditPath' => 'civicrm/admin/options/event_type',
e6ca0a57 680 ],
a9d0587b 681 'add' => '1.7',
c3fc2621
CW
682 ],
683 'participant_listing_id' => [
e501603b
TO
684 'name' => 'participant_listing_id',
685 'type' => CRM_Utils_Type::T_INT,
c3fc2621 686 'title' => ts('Participant Listing'),
215b423e 687 'description' => ts('Should we expose the participant list? Implicit FK to civicrm_option_value where option_group = participant_listing.'),
a36434b9 688 'where' => 'civicrm_event.participant_listing_id',
5d4300ea 689 'default' => 'NULL',
522a26c9 690 'table_name' => 'civicrm_event',
691 'entity' => 'Event',
692 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 693 'localizable' => 0,
c3fc2621 694 'html' => [
e501603b 695 'type' => 'Select',
c3fc2621
CW
696 ],
697 'pseudoconstant' => [
e501603b
TO
698 'optionGroupName' => 'participant_listing',
699 'optionEditPath' => 'civicrm/admin/options/participant_listing',
e6ca0a57 700 ],
a9d0587b 701 'add' => '2.0',
c3fc2621
CW
702 ],
703 'is_public' => [
e501603b
TO
704 'name' => 'is_public',
705 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 706 'title' => ts('Is Event Public'),
215b423e 707 'description' => ts('Public events will be included in the iCal feeds. Access to private event information may be limited using ACLs.'),
a36434b9 708 'where' => 'civicrm_event.is_public',
e501603b 709 'default' => '1',
522a26c9 710 'table_name' => 'civicrm_event',
711 'entity' => 'Event',
712 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 713 'localizable' => 0,
c3fc2621 714 'html' => [
e501603b 715 'type' => 'CheckBox',
c3fc2621 716 ],
a9d0587b 717 'add' => '1.7',
c3fc2621
CW
718 ],
719 'event_start_date' => [
e501603b
TO
720 'name' => 'start_date',
721 'type' => CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME,
c3fc2621 722 'title' => ts('Event Start Date'),
215b423e 723 'description' => ts('Date and time that event starts.'),
c3fc2621 724 'import' => TRUE,
e501603b
TO
725 'where' => 'civicrm_event.start_date',
726 'headerPattern' => '/^start|(s(tart\s)?date)$/i',
c3fc2621 727 'export' => TRUE,
522a26c9 728 'table_name' => 'civicrm_event',
729 'entity' => 'Event',
730 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 731 'localizable' => 0,
c3fc2621 732 'html' => [
e501603b 733 'type' => 'Select Date',
c03ba827 734 'formatType' => 'activityDateTime',
c3fc2621 735 ],
a9d0587b 736 'add' => '1.7',
c3fc2621
CW
737 ],
738 'event_end_date' => [
e501603b
TO
739 'name' => 'end_date',
740 'type' => CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME,
c3fc2621 741 'title' => ts('Event End Date'),
215b423e 742 'description' => ts('Date and time that event ends. May be NULL if no defined end date/time'),
c3fc2621 743 'import' => TRUE,
e501603b
TO
744 'where' => 'civicrm_event.end_date',
745 'headerPattern' => '/^end|(e(nd\s)?date)$/i',
c3fc2621 746 'export' => TRUE,
522a26c9 747 'table_name' => 'civicrm_event',
748 'entity' => 'Event',
749 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 750 'localizable' => 0,
c3fc2621 751 'html' => [
e501603b 752 'type' => 'Select Date',
c03ba827 753 'formatType' => 'activityDateTime',
c3fc2621 754 ],
a9d0587b 755 'add' => '1.7',
c3fc2621
CW
756 ],
757 'is_online_registration' => [
e501603b
TO
758 'name' => 'is_online_registration',
759 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 760 'title' => ts('Is Online Registration'),
215b423e 761 'description' => ts('If true, include registration link on Event Info page.'),
a36434b9 762 'where' => 'civicrm_event.is_online_registration',
45a83e42 763 'default' => '0',
522a26c9 764 'table_name' => 'civicrm_event',
765 'entity' => 'Event',
766 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 767 'localizable' => 0,
c3fc2621 768 'html' => [
e501603b 769 'type' => 'CheckBox',
c3fc2621 770 ],
a9d0587b 771 'add' => '1.7',
c3fc2621
CW
772 ],
773 'registration_link_text' => [
e501603b
TO
774 'name' => 'registration_link_text',
775 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 776 'title' => ts('Event Registration Link Text'),
215b423e 777 'description' => ts('Text for link to Event Registration form which is displayed on Event Information screen when is_online_registration is true.'),
e501603b
TO
778 'maxlength' => 255,
779 'size' => CRM_Utils_Type::HUGE,
a36434b9 780 'where' => 'civicrm_event.registration_link_text',
522a26c9 781 'table_name' => 'civicrm_event',
782 'entity' => 'Event',
783 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 784 'localizable' => 1,
c3fc2621 785 'html' => [
e501603b 786 'type' => 'Text',
c3fc2621 787 ],
a9d0587b 788 'add' => '1.7',
c3fc2621
CW
789 ],
790 'registration_start_date' => [
e501603b
TO
791 'name' => 'registration_start_date',
792 'type' => CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME,
c3fc2621 793 'title' => ts('Registration Start Date'),
215b423e 794 'description' => ts('Date and time that online registration starts.'),
a36434b9 795 'where' => 'civicrm_event.registration_start_date',
522a26c9 796 'table_name' => 'civicrm_event',
797 'entity' => 'Event',
798 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 799 'localizable' => 0,
c3fc2621 800 'html' => [
e501603b 801 'type' => 'Select Date',
c03ba827 802 'formatType' => 'activityDateTime',
c23563e3 803 'label' => ts("Registration Start Date"),
c3fc2621 804 ],
a9d0587b 805 'add' => '1.8',
c3fc2621
CW
806 ],
807 'registration_end_date' => [
e501603b
TO
808 'name' => 'registration_end_date',
809 'type' => CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME,
c3fc2621 810 'title' => ts('Registration End Date'),
215b423e 811 'description' => ts('Date and time that online registration ends.'),
a36434b9 812 'where' => 'civicrm_event.registration_end_date',
522a26c9 813 'table_name' => 'civicrm_event',
814 'entity' => 'Event',
815 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 816 'localizable' => 0,
c3fc2621 817 'html' => [
e501603b 818 'type' => 'Select Date',
c03ba827 819 'formatType' => 'activityDateTime',
c23563e3 820 'label' => ts("Registration End Date"),
c3fc2621 821 ],
a9d0587b 822 'add' => '1.8',
c3fc2621
CW
823 ],
824 'max_participants' => [
e501603b
TO
825 'name' => 'max_participants',
826 'type' => CRM_Utils_Type::T_INT,
c3fc2621 827 'title' => ts('Max Participants'),
215b423e 828 'description' => ts('Maximum number of registered participants to allow. After max is reached, a custom Event Full message is displayed. If NULL, allow unlimited number of participants.'),
a36434b9 829 'where' => 'civicrm_event.max_participants',
e501603b 830 'default' => 'NULL',
522a26c9 831 'table_name' => 'civicrm_event',
832 'entity' => 'Event',
833 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 834 'localizable' => 0,
c3fc2621 835 'html' => [
e501603b 836 'type' => 'Text',
c3fc2621 837 ],
a9d0587b 838 'add' => '1.7',
c3fc2621
CW
839 ],
840 'event_full_text' => [
e501603b
TO
841 'name' => 'event_full_text',
842 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 843 'title' => ts('Event Information'),
215b423e 844 'description' => ts('Message to display on Event Information page and INSTEAD OF Event Registration form if maximum participants are signed up. Can include email address/info about getting on a waiting list, etc. Text and html allowed.'),
e501603b
TO
845 'rows' => 4,
846 'cols' => 60,
a36434b9 847 'where' => 'civicrm_event.event_full_text',
522a26c9 848 'table_name' => 'civicrm_event',
849 'entity' => 'Event',
850 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 851 'localizable' => 1,
c3fc2621 852 'html' => [
e501603b 853 'type' => 'TextArea',
c3fc2621 854 ],
a9d0587b 855 'add' => '1.7',
c3fc2621
CW
856 ],
857 'is_monetary' => [
e501603b
TO
858 'name' => 'is_monetary',
859 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 860 'title' => ts('Is this a PAID event?'),
215b423e 861 'description' => ts('If true, one or more fee amounts must be set and a Payment Processor must be configured for Online Event Registration.'),
a36434b9 862 'where' => 'civicrm_event.is_monetary',
45a83e42 863 'default' => '0',
522a26c9 864 'table_name' => 'civicrm_event',
865 'entity' => 'Event',
866 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 867 'localizable' => 0,
c3fc2621 868 'html' => [
e501603b 869 'type' => 'CheckBox',
c3fc2621 870 ],
a9d0587b 871 'add' => '1.7',
c3fc2621
CW
872 ],
873 'financial_type_id' => [
e501603b
TO
874 'name' => 'financial_type_id',
875 'type' => CRM_Utils_Type::T_INT,
c3fc2621 876 'title' => ts('Financial Type'),
215b423e 877 'description' => ts('Financial type assigned to paid event registrations for this event. Required if is_monetary is true.'),
a36434b9 878 'where' => 'civicrm_event.financial_type_id',
e501603b 879 'default' => 'NULL',
522a26c9 880 'table_name' => 'civicrm_event',
881 'entity' => 'Event',
882 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 883 'localizable' => 0,
c3fc2621 884 'html' => [
e501603b 885 'type' => 'Select',
c3fc2621
CW
886 ],
887 'pseudoconstant' => [
e501603b
TO
888 'table' => 'civicrm_financial_type',
889 'keyColumn' => 'id',
890 'labelColumn' => 'name',
e6ca0a57 891 ],
a9d0587b 892 'add' => '4.3',
c3fc2621
CW
893 ],
894 'payment_processor' => [
e501603b
TO
895 'name' => 'payment_processor',
896 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 897 'title' => ts('Payment Processor'),
215b423e 898 'description' => ts('Payment Processors configured for this Event (if is_monetary is true)'),
e501603b
TO
899 'maxlength' => 128,
900 'size' => CRM_Utils_Type::HUGE,
a36434b9 901 'where' => 'civicrm_event.payment_processor',
522a26c9 902 'table_name' => 'civicrm_event',
903 'entity' => 'Event',
904 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 905 'localizable' => 0,
476627e4 906 'serialize' => self::SERIALIZE_SEPARATOR_TRIMMED,
c3fc2621 907 'html' => [
e501603b 908 'type' => 'Select',
c23563e3 909 'label' => ts("Payment Processors"),
c3fc2621
CW
910 ],
911 'pseudoconstant' => [
e501603b
TO
912 'table' => 'civicrm_payment_processor',
913 'keyColumn' => 'id',
914 'labelColumn' => 'name',
e6ca0a57 915 ],
a9d0587b 916 'add' => '1.8',
c3fc2621
CW
917 ],
918 'is_map' => [
e501603b
TO
919 'name' => 'is_map',
920 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 921 'title' => ts('Map Enabled'),
215b423e 922 'description' => ts('Include a map block on the Event Information page when geocode info is available and a mapping provider has been specified?'),
a36434b9 923 'where' => 'civicrm_event.is_map',
45a83e42 924 'default' => '0',
522a26c9 925 'table_name' => 'civicrm_event',
926 'entity' => 'Event',
927 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 928 'localizable' => 0,
c3fc2621 929 'html' => [
e501603b 930 'type' => 'CheckBox',
c3fc2621 931 ],
a9d0587b 932 'add' => '1.7',
c3fc2621
CW
933 ],
934 'is_active' => [
e501603b
TO
935 'name' => 'is_active',
936 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 937 'title' => ts('Is Active'),
215b423e 938 'description' => ts('Is this Event enabled or disabled/cancelled?'),
a36434b9 939 'where' => 'civicrm_event.is_active',
45a83e42 940 'default' => '0',
522a26c9 941 'table_name' => 'civicrm_event',
942 'entity' => 'Event',
943 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 944 'localizable' => 0,
c3fc2621 945 'html' => [
e501603b 946 'type' => 'CheckBox',
c3fc2621 947 ],
a9d0587b 948 'add' => '1.7',
c3fc2621
CW
949 ],
950 'fee_label' => [
e501603b
TO
951 'name' => 'fee_label',
952 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 953 'title' => ts('Fee Label'),
e501603b
TO
954 'maxlength' => 255,
955 'size' => CRM_Utils_Type::HUGE,
c3fc2621 956 'import' => TRUE,
e501603b
TO
957 'where' => 'civicrm_event.fee_label',
958 'headerPattern' => '/^fee|(f(ee\s)?label)$/i',
c3fc2621 959 'export' => TRUE,
522a26c9 960 'table_name' => 'civicrm_event',
961 'entity' => 'Event',
962 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 963 'localizable' => 1,
c3fc2621 964 'html' => [
e501603b 965 'type' => 'Text',
c3fc2621 966 ],
a9d0587b 967 'add' => '1.8',
c3fc2621
CW
968 ],
969 'is_show_location' => [
e501603b
TO
970 'name' => 'is_show_location',
971 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 972 'title' => ts('show location'),
215b423e 973 'description' => ts('If true, show event location.'),
a36434b9 974 'where' => 'civicrm_event.is_show_location',
e501603b 975 'default' => '1',
522a26c9 976 'table_name' => 'civicrm_event',
977 'entity' => 'Event',
978 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 979 'localizable' => 0,
c3fc2621 980 'html' => [
e501603b 981 'type' => 'CheckBox',
c3fc2621 982 ],
a9d0587b 983 'add' => '1.7',
c3fc2621
CW
984 ],
985 'loc_block_id' => [
e501603b
TO
986 'name' => 'loc_block_id',
987 'type' => CRM_Utils_Type::T_INT,
c3fc2621 988 'title' => ts('Location Block ID'),
215b423e 989 'description' => ts('FK to Location Block ID'),
a36434b9 990 'where' => 'civicrm_event.loc_block_id',
522a26c9 991 'table_name' => 'civicrm_event',
992 'entity' => 'Event',
993 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 994 'localizable' => 0,
e501603b 995 'FKClassName' => 'CRM_Core_DAO_LocBlock',
2cbbebe8
A
996 'html' => [
997 'label' => ts("Location Block"),
998 ],
a9d0587b 999 'add' => '2.0',
c3fc2621
CW
1000 ],
1001 'default_role_id' => [
e501603b
TO
1002 'name' => 'default_role_id',
1003 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1004 'title' => ts('Default Role'),
215b423e 1005 'description' => ts('Participant role ID. Implicit FK to civicrm_option_value where option_group = participant_role.'),
c3fc2621 1006 'import' => TRUE,
e501603b 1007 'where' => 'civicrm_event.default_role_id',
c3fc2621 1008 'export' => TRUE,
e501603b 1009 'default' => '1',
522a26c9 1010 'table_name' => 'civicrm_event',
1011 'entity' => 'Event',
1012 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1013 'localizable' => 0,
c3fc2621 1014 'html' => [
e501603b 1015 'type' => 'Select',
c3fc2621
CW
1016 ],
1017 'pseudoconstant' => [
e501603b
TO
1018 'optionGroupName' => 'participant_role',
1019 'optionEditPath' => 'civicrm/admin/options/participant_role',
e6ca0a57 1020 ],
a9d0587b 1021 'add' => '2.0',
c3fc2621
CW
1022 ],
1023 'intro_text' => [
e501603b
TO
1024 'name' => 'intro_text',
1025 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1026 'title' => ts('Introductory Message'),
215b423e 1027 'description' => ts('Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.'),
e501603b
TO
1028 'rows' => 6,
1029 'cols' => 50,
a36434b9 1030 'where' => 'civicrm_event.intro_text',
522a26c9 1031 'table_name' => 'civicrm_event',
1032 'entity' => 'Event',
1033 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1034 'localizable' => 1,
c3fc2621 1035 'html' => [
efb34c99 1036 'type' => 'RichTextEditor',
c3fc2621 1037 ],
a9d0587b 1038 'add' => '1.7',
c3fc2621
CW
1039 ],
1040 'footer_text' => [
e501603b
TO
1041 'name' => 'footer_text',
1042 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1043 'title' => ts('Footer Message'),
215b423e 1044 'description' => ts('Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.'),
e501603b
TO
1045 'rows' => 6,
1046 'cols' => 50,
a36434b9 1047 'where' => 'civicrm_event.footer_text',
522a26c9 1048 'table_name' => 'civicrm_event',
1049 'entity' => 'Event',
1050 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1051 'localizable' => 1,
c3fc2621 1052 'html' => [
efb34c99 1053 'type' => 'RichTextEditor',
c3fc2621 1054 ],
a9d0587b 1055 'add' => '1.7',
c3fc2621
CW
1056 ],
1057 'confirm_title' => [
e501603b
TO
1058 'name' => 'confirm_title',
1059 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1060 'title' => ts('Confirmation Title'),
215b423e 1061 'description' => ts('Title for Confirmation page.'),
e501603b
TO
1062 'maxlength' => 255,
1063 'size' => CRM_Utils_Type::HUGE,
a36434b9 1064 'where' => 'civicrm_event.confirm_title',
e501603b 1065 'default' => 'NULL',
522a26c9 1066 'table_name' => 'civicrm_event',
1067 'entity' => 'Event',
1068 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1069 'localizable' => 1,
c3fc2621 1070 'html' => [
e501603b 1071 'type' => 'Text',
c3fc2621 1072 ],
a9d0587b 1073 'add' => '1.7',
c3fc2621
CW
1074 ],
1075 'confirm_text' => [
e501603b
TO
1076 'name' => 'confirm_text',
1077 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1078 'title' => ts('Confirm Text'),
215b423e 1079 'description' => ts('Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.'),
e501603b
TO
1080 'rows' => 6,
1081 'cols' => 50,
a36434b9 1082 'where' => 'civicrm_event.confirm_text',
522a26c9 1083 'table_name' => 'civicrm_event',
1084 'entity' => 'Event',
1085 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1086 'localizable' => 1,
c3fc2621 1087 'html' => [
efb34c99 1088 'type' => 'RichTextEditor',
c3fc2621 1089 ],
a9d0587b 1090 'add' => '1.7',
c3fc2621
CW
1091 ],
1092 'confirm_footer_text' => [
e501603b
TO
1093 'name' => 'confirm_footer_text',
1094 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1095 'title' => ts('Footer Text'),
215b423e 1096 'description' => ts('Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.'),
e501603b
TO
1097 'rows' => 6,
1098 'cols' => 50,
a36434b9 1099 'where' => 'civicrm_event.confirm_footer_text',
522a26c9 1100 'table_name' => 'civicrm_event',
1101 'entity' => 'Event',
1102 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1103 'localizable' => 1,
c3fc2621 1104 'html' => [
efb34c99 1105 'type' => 'RichTextEditor',
c3fc2621 1106 ],
a9d0587b 1107 'add' => '1.7',
c3fc2621
CW
1108 ],
1109 'is_email_confirm' => [
e501603b
TO
1110 'name' => 'is_email_confirm',
1111 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1112 'title' => ts('Is confirm email'),
215b423e 1113 'description' => ts('If true, confirmation is automatically emailed to contact on successful registration.'),
a36434b9 1114 'where' => 'civicrm_event.is_email_confirm',
45a83e42 1115 'default' => '0',
522a26c9 1116 'table_name' => 'civicrm_event',
1117 'entity' => 'Event',
1118 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1119 'localizable' => 0,
c3fc2621 1120 'html' => [
e501603b 1121 'type' => 'CheckBox',
c3fc2621 1122 ],
a9d0587b 1123 'add' => '1.7',
c3fc2621
CW
1124 ],
1125 'confirm_email_text' => [
e501603b
TO
1126 'name' => 'confirm_email_text',
1127 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1128 'title' => ts('Confirmation Email Text'),
215b423e 1129 'description' => ts('text to include above standard event info on confirmation email. emails are text-only, so do not allow html for now'),
e501603b
TO
1130 'rows' => 4,
1131 'cols' => 50,
a36434b9 1132 'where' => 'civicrm_event.confirm_email_text',
522a26c9 1133 'table_name' => 'civicrm_event',
1134 'entity' => 'Event',
1135 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1136 'localizable' => 1,
c3fc2621 1137 'html' => [
e501603b 1138 'type' => 'TextArea',
c3fc2621 1139 ],
a9d0587b 1140 'add' => '1.7',
c3fc2621
CW
1141 ],
1142 'confirm_from_name' => [
e501603b
TO
1143 'name' => 'confirm_from_name',
1144 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1145 'title' => ts('Confirm From Name'),
215b423e 1146 'description' => ts('FROM email name used for confirmation emails.'),
e501603b
TO
1147 'maxlength' => 255,
1148 'size' => CRM_Utils_Type::HUGE,
a36434b9 1149 'where' => 'civicrm_event.confirm_from_name',
522a26c9 1150 'table_name' => 'civicrm_event',
1151 'entity' => 'Event',
1152 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1153 'localizable' => 1,
c3fc2621 1154 'html' => [
e501603b 1155 'type' => 'Text',
c3fc2621 1156 ],
a9d0587b 1157 'add' => '1.7',
c3fc2621
CW
1158 ],
1159 'confirm_from_email' => [
e501603b
TO
1160 'name' => 'confirm_from_email',
1161 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1162 'title' => ts('Confirm From Email'),
215b423e 1163 'description' => ts('FROM email address used for confirmation emails.'),
e501603b
TO
1164 'maxlength' => 255,
1165 'size' => CRM_Utils_Type::HUGE,
a36434b9 1166 'where' => 'civicrm_event.confirm_from_email',
522a26c9 1167 'table_name' => 'civicrm_event',
1168 'entity' => 'Event',
1169 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1170 'localizable' => 0,
c3fc2621 1171 'html' => [
e501603b 1172 'type' => 'Text',
c3fc2621 1173 ],
a9d0587b 1174 'add' => '1.7',
c3fc2621
CW
1175 ],
1176 'cc_confirm' => [
e501603b
TO
1177 'name' => 'cc_confirm',
1178 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1179 'title' => ts('Cc Confirm'),
215b423e 1180 'description' => ts('comma-separated list of email addresses to cc each time a confirmation is sent'),
e501603b
TO
1181 'maxlength' => 255,
1182 'size' => CRM_Utils_Type::HUGE,
a36434b9 1183 'where' => 'civicrm_event.cc_confirm',
522a26c9 1184 'table_name' => 'civicrm_event',
1185 'entity' => 'Event',
1186 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1187 'localizable' => 0,
c3fc2621 1188 'html' => [
e501603b 1189 'type' => 'Text',
c23563e3 1190 'label' => ts("CC Confirm"),
c3fc2621 1191 ],
a9d0587b 1192 'add' => '1.7',
c3fc2621
CW
1193 ],
1194 'bcc_confirm' => [
e501603b
TO
1195 'name' => 'bcc_confirm',
1196 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1197 'title' => ts('Bcc Confirm'),
215b423e 1198 'description' => ts('comma-separated list of email addresses to bcc each time a confirmation is sent'),
e501603b
TO
1199 'maxlength' => 255,
1200 'size' => CRM_Utils_Type::HUGE,
a36434b9 1201 'where' => 'civicrm_event.bcc_confirm',
522a26c9 1202 'table_name' => 'civicrm_event',
1203 'entity' => 'Event',
1204 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1205 'localizable' => 0,
c3fc2621 1206 'html' => [
e501603b 1207 'type' => 'Text',
c23563e3 1208 'label' => ts("BCC Confirm"),
c3fc2621 1209 ],
a9d0587b 1210 'add' => '1.7',
c3fc2621
CW
1211 ],
1212 'default_fee_id' => [
e501603b
TO
1213 'name' => 'default_fee_id',
1214 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1215 'title' => ts('Default Fee ID'),
215b423e 1216 'description' => ts('FK to civicrm_option_value.'),
a36434b9 1217 'where' => 'civicrm_event.default_fee_id',
522a26c9 1218 'table_name' => 'civicrm_event',
1219 'entity' => 'Event',
1220 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1221 'localizable' => 0,
a9d0587b 1222 'add' => '1.7',
c3fc2621
CW
1223 ],
1224 'default_discount_fee_id' => [
e501603b
TO
1225 'name' => 'default_discount_fee_id',
1226 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1227 'title' => ts('Default Discount Fee ID'),
215b423e 1228 'description' => ts('FK to civicrm_option_value.'),
a36434b9 1229 'where' => 'civicrm_event.default_discount_fee_id',
522a26c9 1230 'table_name' => 'civicrm_event',
1231 'entity' => 'Event',
1232 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1233 'localizable' => 0,
a9d0587b 1234 'add' => '1.7',
c3fc2621
CW
1235 ],
1236 'thankyou_title' => [
e501603b
TO
1237 'name' => 'thankyou_title',
1238 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1239 'title' => ts('ThankYou Title'),
215b423e 1240 'description' => ts('Title for ThankYou page.'),
e501603b
TO
1241 'maxlength' => 255,
1242 'size' => CRM_Utils_Type::HUGE,
a36434b9 1243 'where' => 'civicrm_event.thankyou_title',
e501603b 1244 'default' => 'NULL',
522a26c9 1245 'table_name' => 'civicrm_event',
1246 'entity' => 'Event',
1247 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1248 'localizable' => 1,
c3fc2621 1249 'html' => [
e501603b 1250 'type' => 'Text',
c3fc2621 1251 ],
a9d0587b 1252 'add' => '1.7',
c3fc2621
CW
1253 ],
1254 'thankyou_text' => [
e501603b
TO
1255 'name' => 'thankyou_text',
1256 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1257 'title' => ts('ThankYou Text'),
215b423e 1258 'description' => ts('ThankYou Text.'),
e501603b
TO
1259 'rows' => 6,
1260 'cols' => 50,
a36434b9 1261 'where' => 'civicrm_event.thankyou_text',
522a26c9 1262 'table_name' => 'civicrm_event',
1263 'entity' => 'Event',
1264 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1265 'localizable' => 1,
c3fc2621 1266 'html' => [
efb34c99 1267 'type' => 'RichTextEditor',
c3fc2621 1268 ],
a9d0587b 1269 'add' => '1.7',
c3fc2621
CW
1270 ],
1271 'thankyou_footer_text' => [
e501603b
TO
1272 'name' => 'thankyou_footer_text',
1273 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1274 'title' => ts('Footer Text'),
215b423e 1275 'description' => ts('Footer message.'),
e501603b
TO
1276 'rows' => 6,
1277 'cols' => 50,
a36434b9 1278 'where' => 'civicrm_event.thankyou_footer_text',
522a26c9 1279 'table_name' => 'civicrm_event',
1280 'entity' => 'Event',
1281 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1282 'localizable' => 1,
c3fc2621 1283 'html' => [
efb34c99 1284 'type' => 'RichTextEditor',
c3fc2621 1285 ],
a9d0587b 1286 'add' => '1.7',
c3fc2621
CW
1287 ],
1288 'is_pay_later' => [
e501603b
TO
1289 'name' => 'is_pay_later',
1290 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1291 'title' => ts('Pay Later Allowed'),
215b423e 1292 'description' => ts('if true - allows the user to send payment directly to the org later'),
a36434b9 1293 'where' => 'civicrm_event.is_pay_later',
45a83e42 1294 'default' => '0',
522a26c9 1295 'table_name' => 'civicrm_event',
1296 'entity' => 'Event',
1297 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1298 'localizable' => 0,
c3fc2621 1299 'html' => [
e501603b 1300 'type' => 'CheckBox',
c3fc2621 1301 ],
a9d0587b 1302 'add' => '2.0',
c3fc2621
CW
1303 ],
1304 'pay_later_text' => [
e501603b
TO
1305 'name' => 'pay_later_text',
1306 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1307 'title' => ts('Pay Later Text'),
215b423e 1308 'description' => ts('The text displayed to the user in the main form'),
a36434b9 1309 'where' => 'civicrm_event.pay_later_text',
522a26c9 1310 'table_name' => 'civicrm_event',
1311 'entity' => 'Event',
1312 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1313 'localizable' => 1,
c3fc2621 1314 'html' => [
efb34c99 1315 'type' => 'RichTextEditor',
c3fc2621 1316 ],
a9d0587b 1317 'add' => '2.0',
c3fc2621
CW
1318 ],
1319 'pay_later_receipt' => [
e501603b
TO
1320 'name' => 'pay_later_receipt',
1321 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1322 'title' => ts('Pay Later Receipt Text'),
215b423e 1323 'description' => ts('The receipt sent to the user instead of the normal receipt text'),
a36434b9 1324 'where' => 'civicrm_event.pay_later_receipt',
522a26c9 1325 'table_name' => 'civicrm_event',
1326 'entity' => 'Event',
1327 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1328 'localizable' => 1,
c3fc2621 1329 'html' => [
e501603b 1330 'type' => 'Text',
c3fc2621 1331 ],
a9d0587b 1332 'add' => '2.0',
c3fc2621
CW
1333 ],
1334 'is_partial_payment' => [
e501603b
TO
1335 'name' => 'is_partial_payment',
1336 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1337 'title' => ts('Partial Payments Enabled'),
215b423e 1338 'description' => ts('is partial payment enabled for this event'),
a36434b9 1339 'where' => 'civicrm_event.is_partial_payment',
45a83e42 1340 'default' => '0',
522a26c9 1341 'table_name' => 'civicrm_event',
1342 'entity' => 'Event',
1343 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1344 'localizable' => 0,
c3fc2621 1345 'html' => [
e501603b 1346 'type' => 'CheckBox',
c3fc2621 1347 ],
a9d0587b 1348 'add' => '4.3',
c3fc2621
CW
1349 ],
1350 'initial_amount_label' => [
e501603b
TO
1351 'name' => 'initial_amount_label',
1352 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1353 'title' => ts('Initial Amount Label'),
215b423e 1354 'description' => ts('Initial amount label for partial payment'),
e501603b
TO
1355 'maxlength' => 255,
1356 'size' => CRM_Utils_Type::HUGE,
a36434b9 1357 'where' => 'civicrm_event.initial_amount_label',
522a26c9 1358 'table_name' => 'civicrm_event',
1359 'entity' => 'Event',
1360 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1361 'localizable' => 1,
c3fc2621 1362 'html' => [
e501603b 1363 'type' => 'Text',
c3fc2621 1364 ],
a9d0587b 1365 'add' => '4.3',
c3fc2621
CW
1366 ],
1367 'initial_amount_help_text' => [
e501603b
TO
1368 'name' => 'initial_amount_help_text',
1369 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1370 'title' => ts('Initial Amount Help Text'),
215b423e 1371 'description' => ts('Initial amount help text for partial payment'),
a36434b9 1372 'where' => 'civicrm_event.initial_amount_help_text',
522a26c9 1373 'table_name' => 'civicrm_event',
1374 'entity' => 'Event',
1375 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1376 'localizable' => 1,
c3fc2621 1377 'html' => [
e501603b 1378 'type' => 'Text',
c3fc2621 1379 ],
a9d0587b 1380 'add' => '4.3',
c3fc2621
CW
1381 ],
1382 'min_initial_amount' => [
e501603b
TO
1383 'name' => 'min_initial_amount',
1384 'type' => CRM_Utils_Type::T_MONEY,
c3fc2621 1385 'title' => ts('Minimum Initial Amount'),
215b423e 1386 'description' => ts('Minimum initial amount for partial payment'),
c3fc2621 1387 'precision' => [
e501603b 1388 20,
fb607354 1389 2,
c3fc2621 1390 ],
a36434b9 1391 'where' => 'civicrm_event.min_initial_amount',
522a26c9 1392 'table_name' => 'civicrm_event',
1393 'entity' => 'Event',
1394 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1395 'localizable' => 0,
c3fc2621 1396 'html' => [
e501603b 1397 'type' => 'Text',
c3fc2621 1398 ],
a9d0587b 1399 'add' => '4.3',
c3fc2621
CW
1400 ],
1401 'is_multiple_registrations' => [
e501603b
TO
1402 'name' => 'is_multiple_registrations',
1403 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1404 'title' => ts('Allow Multiple Registrations'),
215b423e 1405 'description' => ts('if true - allows the user to register multiple participants for event'),
a36434b9 1406 'where' => 'civicrm_event.is_multiple_registrations',
45a83e42 1407 'default' => '0',
522a26c9 1408 'table_name' => 'civicrm_event',
1409 'entity' => 'Event',
1410 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1411 'localizable' => 0,
c3fc2621 1412 'html' => [
e501603b 1413 'type' => 'CheckBox',
c3fc2621 1414 ],
a9d0587b 1415 'add' => '2.1',
c3fc2621
CW
1416 ],
1417 'max_additional_participants' => [
e501603b
TO
1418 'name' => 'max_additional_participants',
1419 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1420 'title' => ts('Maximum number of additional participants per registration'),
215b423e 1421 'description' => ts('Maximum number of additional participants that can be registered on a single booking'),
a36434b9 1422 'where' => 'civicrm_event.max_additional_participants',
45a83e42 1423 'default' => '0',
522a26c9 1424 'table_name' => 'civicrm_event',
1425 'entity' => 'Event',
1426 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1427 'localizable' => 0,
a9d0587b 1428 'add' => '4.7',
c3fc2621
CW
1429 ],
1430 'allow_same_participant_emails' => [
e501603b
TO
1431 'name' => 'allow_same_participant_emails',
1432 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1433 'title' => ts('Does Event allow multiple registrations from same email address?'),
215b423e 1434 'description' => ts('if true - allows the user to register multiple registrations from same email address.'),
a36434b9 1435 'where' => 'civicrm_event.allow_same_participant_emails',
45a83e42 1436 'default' => '0',
522a26c9 1437 'table_name' => 'civicrm_event',
1438 'entity' => 'Event',
1439 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1440 'localizable' => 0,
c3fc2621 1441 'html' => [
e501603b 1442 'type' => 'CheckBox',
c3fc2621 1443 ],
a9d0587b 1444 'add' => '2.2',
c3fc2621
CW
1445 ],
1446 'has_waitlist' => [
e501603b
TO
1447 'name' => 'has_waitlist',
1448 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1449 'title' => ts('Waitlist Enabled'),
215b423e 1450 'description' => ts('Whether the event has waitlist support.'),
a36434b9 1451 'where' => 'civicrm_event.has_waitlist',
522a26c9 1452 'table_name' => 'civicrm_event',
1453 'entity' => 'Event',
1454 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1455 'localizable' => 0,
c3fc2621 1456 'html' => [
e501603b 1457 'type' => 'CheckBox',
c3fc2621 1458 ],
a9d0587b 1459 'add' => '3.0',
c3fc2621
CW
1460 ],
1461 'requires_approval' => [
e501603b
TO
1462 'name' => 'requires_approval',
1463 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1464 'title' => ts('Requires Approval'),
215b423e 1465 'description' => ts('Whether participants require approval before they can finish registering.'),
a36434b9 1466 'where' => 'civicrm_event.requires_approval',
522a26c9 1467 'table_name' => 'civicrm_event',
1468 'entity' => 'Event',
1469 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1470 'localizable' => 0,
c3fc2621 1471 'html' => [
e501603b 1472 'type' => 'CheckBox',
c23563e3 1473 'label' => ts("Requires Approval"),
c3fc2621 1474 ],
a9d0587b 1475 'add' => '3.0',
c3fc2621
CW
1476 ],
1477 'expiration_time' => [
e501603b
TO
1478 'name' => 'expiration_time',
1479 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1480 'title' => ts('Expiration Time'),
215b423e 1481 'description' => ts('Expire pending but unconfirmed registrations after this many hours.'),
a36434b9 1482 'where' => 'civicrm_event.expiration_time',
522a26c9 1483 'table_name' => 'civicrm_event',
1484 'entity' => 'Event',
1485 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1486 'localizable' => 0,
c3fc2621 1487 'html' => [
e501603b 1488 'type' => 'Text',
c23563e3 1489 'label' => ts("Expiration Time"),
c3fc2621 1490 ],
a9d0587b 1491 'add' => '3.0',
c3fc2621
CW
1492 ],
1493 'allow_selfcancelxfer' => [
e501603b
TO
1494 'name' => 'allow_selfcancelxfer',
1495 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1496 'title' => ts('Allow Self-service Cancellation or Transfer'),
215b423e 1497 'description' => ts('Allow self service cancellation or transfer for event?'),
a36434b9 1498 'where' => 'civicrm_event.allow_selfcancelxfer',
45a83e42 1499 'default' => '0',
522a26c9 1500 'table_name' => 'civicrm_event',
1501 'entity' => 'Event',
1502 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1503 'localizable' => 0,
c3fc2621 1504 'html' => [
e501603b 1505 'type' => 'CheckBox',
c3fc2621 1506 ],
a9d0587b 1507 'add' => '4.7',
c3fc2621
CW
1508 ],
1509 'selfcancelxfer_time' => [
e501603b
TO
1510 'name' => 'selfcancelxfer_time',
1511 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1512 'title' => ts('Self-service Cancellation or Transfer Time'),
215b423e 1513 'description' => ts('Number of hours prior to event start date to allow self-service cancellation or transfer.'),
a36434b9 1514 'where' => 'civicrm_event.selfcancelxfer_time',
45a83e42 1515 'default' => '0',
522a26c9 1516 'table_name' => 'civicrm_event',
1517 'entity' => 'Event',
1518 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1519 'localizable' => 0,
c3fc2621 1520 'html' => [
e501603b 1521 'type' => 'Text',
c3fc2621 1522 ],
a9d0587b 1523 'add' => '4.7',
c3fc2621
CW
1524 ],
1525 'waitlist_text' => [
e501603b
TO
1526 'name' => 'waitlist_text',
1527 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1528 'title' => ts('Waitlist Text'),
215b423e 1529 'description' => ts('Text to display when the event is full, but participants can signup for a waitlist.'),
e501603b
TO
1530 'rows' => 4,
1531 'cols' => 60,
a36434b9 1532 'where' => 'civicrm_event.waitlist_text',
522a26c9 1533 'table_name' => 'civicrm_event',
1534 'entity' => 'Event',
1535 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1536 'localizable' => 1,
c3fc2621 1537 'html' => [
e501603b 1538 'type' => 'TextArea',
c23563e3 1539 'label' => ts("Waitlist Text"),
c3fc2621 1540 ],
a9d0587b 1541 'add' => '3.0',
c3fc2621
CW
1542 ],
1543 'approval_req_text' => [
e501603b
TO
1544 'name' => 'approval_req_text',
1545 'type' => CRM_Utils_Type::T_TEXT,
c3fc2621 1546 'title' => ts('Approval Req Text'),
215b423e 1547 'description' => ts('Text to display when the approval is required to complete registration for an event.'),
e501603b
TO
1548 'rows' => 4,
1549 'cols' => 60,
a36434b9 1550 'where' => 'civicrm_event.approval_req_text',
522a26c9 1551 'table_name' => 'civicrm_event',
1552 'entity' => 'Event',
1553 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1554 'localizable' => 1,
c3fc2621 1555 'html' => [
e501603b 1556 'type' => 'TextArea',
c23563e3 1557 'label' => ts("Approval Required Text"),
c3fc2621 1558 ],
a9d0587b 1559 'add' => '3.0',
c3fc2621
CW
1560 ],
1561 'is_template' => [
e501603b
TO
1562 'name' => 'is_template',
1563 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1564 'title' => ts('Is an Event Template'),
215b423e 1565 'description' => ts('whether the event has template'),
c3fc2621 1566 'required' => TRUE,
a36434b9 1567 'where' => 'civicrm_event.is_template',
45a83e42 1568 'default' => '0',
522a26c9 1569 'table_name' => 'civicrm_event',
1570 'entity' => 'Event',
1571 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1572 'localizable' => 0,
c3fc2621 1573 'html' => [
e501603b 1574 'type' => 'CheckBox',
c3fc2621 1575 ],
a9d0587b 1576 'add' => '3.0',
c3fc2621
CW
1577 ],
1578 'template_title' => [
e501603b
TO
1579 'name' => 'template_title',
1580 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1581 'title' => ts('Event Template Title'),
215b423e 1582 'description' => ts('Event Template Title'),
e501603b
TO
1583 'maxlength' => 255,
1584 'size' => CRM_Utils_Type::HUGE,
c3fc2621 1585 'import' => TRUE,
e501603b
TO
1586 'where' => 'civicrm_event.template_title',
1587 'headerPattern' => '/(template.)?title$/i',
c3fc2621 1588 'export' => TRUE,
522a26c9 1589 'table_name' => 'civicrm_event',
1590 'entity' => 'Event',
1591 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1592 'localizable' => 1,
c3fc2621 1593 'html' => [
e501603b 1594 'type' => 'Text',
c3fc2621 1595 ],
a9d0587b 1596 'add' => '3.0',
c3fc2621
CW
1597 ],
1598 'created_id' => [
e501603b
TO
1599 'name' => 'created_id',
1600 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1601 'title' => ts('Created By Contact ID'),
215b423e 1602 'description' => ts('FK to civicrm_contact, who created this event'),
a36434b9 1603 'where' => 'civicrm_event.created_id',
522a26c9 1604 'table_name' => 'civicrm_event',
1605 'entity' => 'Event',
1606 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1607 'localizable' => 0,
e501603b 1608 'FKClassName' => 'CRM_Contact_DAO_Contact',
2cbbebe8
A
1609 'html' => [
1610 'label' => ts("Created By"),
1611 ],
a9d0587b 1612 'add' => '3.0',
c3fc2621
CW
1613 ],
1614 'created_date' => [
e501603b
TO
1615 'name' => 'created_date',
1616 'type' => CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME,
c3fc2621 1617 'title' => ts('Event Created Date'),
215b423e 1618 'description' => ts('Date and time that event was created.'),
a36434b9 1619 'where' => 'civicrm_event.created_date',
522a26c9 1620 'table_name' => 'civicrm_event',
1621 'entity' => 'Event',
1622 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1623 'localizable' => 0,
a9d0587b 1624 'add' => '3.0',
c3fc2621
CW
1625 ],
1626 'currency' => [
e501603b
TO
1627 'name' => 'currency',
1628 'type' => CRM_Utils_Type::T_STRING,
c3fc2621 1629 'title' => ts('Currency'),
215b423e 1630 'description' => ts('3 character string, value from config setting or input via user.'),
e501603b
TO
1631 'maxlength' => 3,
1632 'size' => CRM_Utils_Type::FOUR,
c3fc2621 1633 'import' => TRUE,
e501603b
TO
1634 'where' => 'civicrm_event.currency',
1635 'headerPattern' => '/cur(rency)?/i',
1636 'dataPattern' => '/^[A-Z]{3}$/i',
c3fc2621 1637 'export' => TRUE,
522a26c9 1638 'table_name' => 'civicrm_event',
1639 'entity' => 'Event',
1640 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1641 'localizable' => 0,
c3fc2621 1642 'html' => [
e501603b 1643 'type' => 'Select',
c23563e3 1644 'label' => ts("Currency"),
c3fc2621
CW
1645 ],
1646 'pseudoconstant' => [
e501603b
TO
1647 'table' => 'civicrm_currency',
1648 'keyColumn' => 'name',
1649 'labelColumn' => 'full_name',
1650 'nameColumn' => 'name',
a8fdb24e 1651 'abbrColumn' => 'symbol',
e6ca0a57 1652 ],
a9d0587b 1653 'add' => '3.3',
c3fc2621
CW
1654 ],
1655 'campaign_id' => [
e501603b
TO
1656 'name' => 'campaign_id',
1657 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 1658 'title' => ts('Campaign ID'),
215b423e 1659 'description' => ts('The campaign for which this event has been created.'),
a36434b9 1660 'where' => 'civicrm_event.campaign_id',
522a26c9 1661 'table_name' => 'civicrm_event',
1662 'entity' => 'Event',
1663 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1664 'localizable' => 0,
e501603b 1665 'FKClassName' => 'CRM_Campaign_DAO_Campaign',
88c31c05 1666 'component' => 'CiviCampaign',
c3fc2621 1667 'html' => [
e501603b 1668 'type' => 'EntityRef',
2cbbebe8 1669 'label' => ts("Campaign"),
c3fc2621 1670 ],
25ad69f2
CW
1671 'pseudoconstant' => [
1672 'table' => 'civicrm_campaign',
1673 'keyColumn' => 'id',
1674 'labelColumn' => 'title',
1675 'prefetch' => 'FALSE',
1676 ],
a9d0587b 1677 'add' => '3.4',
c3fc2621
CW
1678 ],
1679 'is_share' => [
e501603b
TO
1680 'name' => 'is_share',
1681 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1682 'title' => ts('Is shared through social media'),
215b423e 1683 'description' => ts('Can people share the event through social media?'),
a36434b9 1684 'where' => 'civicrm_event.is_share',
e501603b 1685 'default' => '1',
522a26c9 1686 'table_name' => 'civicrm_event',
1687 'entity' => 'Event',
1688 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1689 'localizable' => 0,
c3fc2621 1690 'html' => [
e501603b 1691 'type' => 'CheckBox',
c3fc2621 1692 ],
a9d0587b 1693 'add' => '4.1',
c3fc2621
CW
1694 ],
1695 'is_confirm_enabled' => [
e501603b
TO
1696 'name' => 'is_confirm_enabled',
1697 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1698 'title' => ts('Is the booking confirmation screen enabled?'),
215b423e 1699 'description' => ts('If false, the event booking confirmation screen gets skipped'),
a36434b9 1700 'where' => 'civicrm_event.is_confirm_enabled',
e501603b 1701 'default' => '1',
522a26c9 1702 'table_name' => 'civicrm_event',
1703 'entity' => 'Event',
1704 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1705 'localizable' => 0,
c3fc2621 1706 'html' => [
e501603b 1707 'type' => 'CheckBox',
c3fc2621 1708 ],
a9d0587b 1709 'add' => '4.5',
c3fc2621
CW
1710 ],
1711 'parent_event_id' => [
e501603b
TO
1712 'name' => 'parent_event_id',
1713 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1714 'title' => ts('Parent Event ID'),
215b423e 1715 'description' => ts('Implicit FK to civicrm_event: parent event'),
a36434b9 1716 'where' => 'civicrm_event.parent_event_id',
e501603b 1717 'default' => 'NULL',
522a26c9 1718 'table_name' => 'civicrm_event',
1719 'entity' => 'Event',
1720 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1721 'localizable' => 0,
c3fc2621 1722 'html' => [
e501603b 1723 'type' => 'EntityRef',
c3fc2621 1724 ],
a9d0587b 1725 'add' => '4.1',
c3fc2621
CW
1726 ],
1727 'slot_label_id' => [
e501603b
TO
1728 'name' => 'slot_label_id',
1729 'type' => CRM_Utils_Type::T_INT,
c3fc2621 1730 'title' => ts('Subevent Slot Label ID'),
215b423e 1731 'description' => ts('Subevent slot label. Implicit FK to civicrm_option_value where option_group = conference_slot.'),
a36434b9 1732 'where' => 'civicrm_event.slot_label_id',
e501603b 1733 'default' => 'NULL',
522a26c9 1734 'table_name' => 'civicrm_event',
1735 'entity' => 'Event',
1736 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1737 'localizable' => 0,
c3fc2621 1738 'html' => [
e501603b 1739 'type' => 'Select',
c3fc2621 1740 ],
a9d0587b 1741 'add' => '4.1',
c3fc2621
CW
1742 ],
1743 'dedupe_rule_group_id' => [
e501603b
TO
1744 'name' => 'dedupe_rule_group_id',
1745 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 1746 'title' => ts('Dedupe Rule ID'),
215b423e 1747 'description' => ts('Rule to use when matching registrations for this event'),
a36434b9 1748 'where' => 'civicrm_event.dedupe_rule_group_id',
e501603b 1749 'default' => 'NULL',
522a26c9 1750 'table_name' => 'civicrm_event',
1751 'entity' => 'Event',
1752 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1753 'localizable' => 0,
bb4187d7 1754 'FKClassName' => 'CRM_Dedupe_DAO_DedupeRuleGroup',
c3fc2621 1755 'html' => [
e501603b 1756 'type' => 'Select',
2cbbebe8 1757 'label' => ts("Dedupe Rule"),
c3fc2621
CW
1758 ],
1759 'pseudoconstant' => [
e501603b
TO
1760 'table' => 'civicrm_dedupe_rule_group',
1761 'keyColumn' => 'id',
1762 'labelColumn' => 'title',
1763 'nameColumn' => 'name',
e6ca0a57 1764 ],
a9d0587b 1765 'add' => '4.5',
c3fc2621
CW
1766 ],
1767 'is_billing_required' => [
e501603b
TO
1768 'name' => 'is_billing_required',
1769 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 1770 'title' => ts('Is billing block required'),
215b423e 1771 'description' => ts('if true than billing block is required this event'),
a36434b9 1772 'where' => 'civicrm_event.is_billing_required',
45a83e42 1773 'default' => '0',
522a26c9 1774 'table_name' => 'civicrm_event',
1775 'entity' => 'Event',
1776 'bao' => 'CRM_Event_BAO_Event',
6a7e5e5d 1777 'localizable' => 0,
c3fc2621 1778 'html' => [
e501603b 1779 'type' => 'CheckBox',
c3fc2621 1780 ],
a9d0587b 1781 'add' => '4.6',
c3fc2621
CW
1782 ],
1783 ];
346aaaba 1784 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'fields_callback', Civi::$statics[__CLASS__]['fields']);
e501603b 1785 }
346aaaba 1786 return Civi::$statics[__CLASS__]['fields'];
e501603b 1787 }
c3fc2621 1788
e501603b 1789 /**
bd8e0b14 1790 * Return a mapping from field-name to the corresponding key (as used in fields()).
e501603b
TO
1791 *
1792 * @return array
bd8e0b14 1793 * Array(string $name => string $uniqueName).
e501603b 1794 */
c3fc2621 1795 public static function &fieldKeys() {
bd8e0b14
TO
1796 if (!isset(Civi::$statics[__CLASS__]['fieldKeys'])) {
1797 Civi::$statics[__CLASS__]['fieldKeys'] = array_flip(CRM_Utils_Array::collect('name', self::fields()));
e501603b 1798 }
bd8e0b14 1799 return Civi::$statics[__CLASS__]['fieldKeys'];
e501603b 1800 }
c3fc2621 1801
e501603b
TO
1802 /**
1803 * Returns the names of this table
1804 *
1805 * @return string
1806 */
c3fc2621 1807 public static function getTableName() {
e501603b
TO
1808 return CRM_Core_DAO::getLocaleTableName(self::$_tableName);
1809 }
c3fc2621 1810
e501603b
TO
1811 /**
1812 * Returns if this table needs to be logged
1813 *
c3fc2621 1814 * @return bool
e501603b 1815 */
c3fc2621 1816 public function getLog() {
e501603b
TO
1817 return self::$_log;
1818 }
c3fc2621 1819
e501603b
TO
1820 /**
1821 * Returns the list of fields that can be imported
1822 *
1823 * @param bool $prefix
1824 *
1825 * @return array
1826 */
c3fc2621
CW
1827 public static function &import($prefix = FALSE) {
1828 $r = CRM_Core_DAO_AllCoreTables::getImports(__CLASS__, 'event', $prefix, []);
60808919 1829 return $r;
e501603b 1830 }
c3fc2621 1831
e501603b
TO
1832 /**
1833 * Returns the list of fields that can be exported
1834 *
1835 * @param bool $prefix
1836 *
1837 * @return array
1838 */
c3fc2621
CW
1839 public static function &export($prefix = FALSE) {
1840 $r = CRM_Core_DAO_AllCoreTables::getExports(__CLASS__, 'event', $prefix, []);
60808919 1841 return $r;
e501603b 1842 }
c3fc2621 1843
e7a6b91a
AS
1844 /**
1845 * Returns the list of indices
c3fc2621
CW
1846 *
1847 * @param bool $localize
1848 *
1849 * @return array
e7a6b91a
AS
1850 */
1851 public static function indices($localize = TRUE) {
c3fc2621
CW
1852 $indices = [
1853 'index_event_type_id' => [
e7a6b91a 1854 'name' => 'index_event_type_id',
c3fc2621 1855 'field' => [
e7a6b91a 1856 0 => 'event_type_id',
c3fc2621
CW
1857 ],
1858 'localizable' => FALSE,
e7a6b91a 1859 'sig' => 'civicrm_event::0::event_type_id',
c3fc2621
CW
1860 ],
1861 'index_participant_listing_id' => [
e7a6b91a 1862 'name' => 'index_participant_listing_id',
c3fc2621 1863 'field' => [
e7a6b91a 1864 0 => 'participant_listing_id',
c3fc2621
CW
1865 ],
1866 'localizable' => FALSE,
e7a6b91a 1867 'sig' => 'civicrm_event::0::participant_listing_id',
c3fc2621
CW
1868 ],
1869 'index_parent_event_id' => [
e7a6b91a 1870 'name' => 'index_parent_event_id',
c3fc2621 1871 'field' => [
e7a6b91a 1872 0 => 'parent_event_id',
c3fc2621
CW
1873 ],
1874 'localizable' => FALSE,
e7a6b91a 1875 'sig' => 'civicrm_event::0::parent_event_id',
c3fc2621
CW
1876 ],
1877 ];
e7a6b91a
AS
1878 return ($localize && !empty($indices)) ? CRM_Core_DAO_AllCoreTables::multilingualize(__CLASS__, $indices) : $indices;
1879 }
c3fc2621 1880
e501603b 1881}