5 * @copyright CiviCRM LLC https://civicrm.org/licensing
7 * Generated from xml/schema/CRM/Event/Event.xml
8 * DO NOT EDIT. Generated by CRM_Core_CodeGen
9 * (GenCodeChecksum:142b4991959919f73cea72a40b3f4a1d)
13 * Database access object for the Event entity.
15 class CRM_Event_DAO_Event
extends CRM_Core_DAO
{
16 const EXT
= 'civicrm';
17 const TABLE_ADDED
= '1.7';
18 const COMPONENT
= 'CiviEvent';
21 * Static instance to hold the table name.
25 public static $_tableName = 'civicrm_event';
28 * Icon associated with this entity.
32 public static $_icon = 'fa-calendar';
35 * Field to show when displaying a record.
39 public static $_labelField = 'title';
42 * Should CiviCRM log any modifications to this table in the civicrm_log table.
46 public static $_log = TRUE;
49 * Paths for accessing this entity in the UI.
53 protected static $_paths = [
54 'add' => 'civicrm/event/add?reset=1',
55 'view' => 'civicrm/event/info?reset=1&id=[id]',
61 * @var int|string|null
62 * (SQL type: int unsigned)
63 * Note that values will be retrieved from the database as a string.
68 * Event Title (e.g. Fall Fundraiser Dinner)
71 * (SQL type: varchar(255))
72 * Note that values will be retrieved from the database as a string.
77 * 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.
81 * Note that values will be retrieved from the database as a string.
86 * Full description of event. Text and html allowed. Displayed on built-in Event Information screens.
90 * Note that values will be retrieved from the database as a string.
95 * Event Type ID.Implicit FK to civicrm_option_value where option_group = event_type.
97 * @var int|string|null
98 * (SQL type: int unsigned)
99 * Note that values will be retrieved from the database as a string.
101 public $event_type_id;
104 * Should we expose the participant list? Implicit FK to civicrm_option_value where option_group = participant_listing.
106 * @var int|string|null
107 * (SQL type: int unsigned)
108 * Note that values will be retrieved from the database as a string.
110 public $participant_listing_id;
113 * Public events will be included in the iCal feeds. Access to private event information may be limited using ACLs.
115 * @var bool|string|null
116 * (SQL type: tinyint)
117 * Note that values will be retrieved from the database as a string.
122 * Date and time that event starts.
125 * (SQL type: timestamp)
126 * Note that values will be retrieved from the database as a string.
131 * Date and time that event ends. May be NULL if no defined end date/time
134 * (SQL type: timestamp)
135 * Note that values will be retrieved from the database as a string.
140 * If true, include registration link on Event Info page.
142 * @var bool|string|null
143 * (SQL type: tinyint)
144 * Note that values will be retrieved from the database as a string.
146 public $is_online_registration;
149 * Text for link to Event Registration form which is displayed on Event Information screen when is_online_registration is true.
152 * (SQL type: varchar(255))
153 * Note that values will be retrieved from the database as a string.
155 public $registration_link_text;
158 * Date and time that online registration starts.
161 * (SQL type: timestamp)
162 * Note that values will be retrieved from the database as a string.
164 public $registration_start_date;
167 * Date and time that online registration ends.
170 * (SQL type: timestamp)
171 * Note that values will be retrieved from the database as a string.
173 public $registration_end_date;
176 * 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.
178 * @var int|string|null
179 * (SQL type: int unsigned)
180 * Note that values will be retrieved from the database as a string.
182 public $max_participants;
185 * 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.
189 * Note that values will be retrieved from the database as a string.
191 public $event_full_text;
194 * If true, one or more fee amounts must be set and a Payment Processor must be configured for Online Event Registration.
196 * @var bool|string|null
197 * (SQL type: tinyint)
198 * Note that values will be retrieved from the database as a string.
203 * Financial type assigned to paid event registrations for this event. Required if is_monetary is true.
205 * @var int|string|null
206 * (SQL type: int unsigned)
207 * Note that values will be retrieved from the database as a string.
209 public $financial_type_id;
212 * Payment Processors configured for this Event (if is_monetary is true)
215 * (SQL type: varchar(128))
216 * Note that values will be retrieved from the database as a string.
218 public $payment_processor;
221 * Include a map block on the Event Information page when geocode info is available and a mapping provider has been specified?
223 * @var bool|string|null
224 * (SQL type: tinyint)
225 * Note that values will be retrieved from the database as a string.
230 * Is this Event enabled or disabled/cancelled?
232 * @var bool|string|null
233 * (SQL type: tinyint)
234 * Note that values will be retrieved from the database as a string.
240 * (SQL type: varchar(255))
241 * Note that values will be retrieved from the database as a string.
246 * If true, show event location.
248 * @var bool|string|null
249 * (SQL type: tinyint)
250 * Note that values will be retrieved from the database as a string.
252 public $is_show_location;
255 * FK to Location Block ID
257 * @var int|string|null
258 * (SQL type: int unsigned)
259 * Note that values will be retrieved from the database as a string.
261 public $loc_block_id;
264 * Participant role ID. Implicit FK to civicrm_option_value where option_group = participant_role.
266 * @var int|string|null
267 * (SQL type: int unsigned)
268 * Note that values will be retrieved from the database as a string.
270 public $default_role_id;
273 * Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.
277 * Note that values will be retrieved from the database as a string.
282 * Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.
286 * Note that values will be retrieved from the database as a string.
291 * Title for Confirmation page.
294 * (SQL type: varchar(255))
295 * Note that values will be retrieved from the database as a string.
297 public $confirm_title;
300 * Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.
304 * Note that values will be retrieved from the database as a string.
306 public $confirm_text;
309 * Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.
313 * Note that values will be retrieved from the database as a string.
315 public $confirm_footer_text;
318 * If true, confirmation is automatically emailed to contact on successful registration.
320 * @var bool|string|null
321 * (SQL type: tinyint)
322 * Note that values will be retrieved from the database as a string.
324 public $is_email_confirm;
327 * text to include above standard event info on confirmation email. emails are text-only, so do not allow html for now
331 * Note that values will be retrieved from the database as a string.
333 public $confirm_email_text;
336 * FROM email name used for confirmation emails.
339 * (SQL type: varchar(255))
340 * Note that values will be retrieved from the database as a string.
342 public $confirm_from_name;
345 * FROM email address used for confirmation emails.
348 * (SQL type: varchar(255))
349 * Note that values will be retrieved from the database as a string.
351 public $confirm_from_email;
354 * comma-separated list of email addresses to cc each time a confirmation is sent
357 * (SQL type: varchar(255))
358 * Note that values will be retrieved from the database as a string.
363 * comma-separated list of email addresses to bcc each time a confirmation is sent
366 * (SQL type: varchar(255))
367 * Note that values will be retrieved from the database as a string.
372 * FK to civicrm_option_value.
374 * @var int|string|null
375 * (SQL type: int unsigned)
376 * Note that values will be retrieved from the database as a string.
378 public $default_fee_id;
381 * FK to civicrm_option_value.
383 * @var int|string|null
384 * (SQL type: int unsigned)
385 * Note that values will be retrieved from the database as a string.
387 public $default_discount_fee_id;
390 * Title for ThankYou page.
393 * (SQL type: varchar(255))
394 * Note that values will be retrieved from the database as a string.
396 public $thankyou_title;
403 * Note that values will be retrieved from the database as a string.
405 public $thankyou_text;
412 * Note that values will be retrieved from the database as a string.
414 public $thankyou_footer_text;
417 * if true - allows the user to send payment directly to the org later
419 * @var bool|string|null
420 * (SQL type: tinyint)
421 * Note that values will be retrieved from the database as a string.
423 public $is_pay_later;
426 * The text displayed to the user in the main form
430 * Note that values will be retrieved from the database as a string.
432 public $pay_later_text;
435 * The receipt sent to the user instead of the normal receipt text
439 * Note that values will be retrieved from the database as a string.
441 public $pay_later_receipt;
444 * is partial payment enabled for this event
446 * @var bool|string|null
447 * (SQL type: tinyint)
448 * Note that values will be retrieved from the database as a string.
450 public $is_partial_payment;
453 * Initial amount label for partial payment
456 * (SQL type: varchar(255))
457 * Note that values will be retrieved from the database as a string.
459 public $initial_amount_label;
462 * Initial amount help text for partial payment
466 * Note that values will be retrieved from the database as a string.
468 public $initial_amount_help_text;
471 * Minimum initial amount for partial payment
473 * @var float|string|null
474 * (SQL type: decimal(20,2))
475 * Note that values will be retrieved from the database as a string.
477 public $min_initial_amount;
480 * if true - allows the user to register multiple participants for event
482 * @var bool|string|null
483 * (SQL type: tinyint)
484 * Note that values will be retrieved from the database as a string.
486 public $is_multiple_registrations;
489 * Maximum number of additional participants that can be registered on a single booking
491 * @var int|string|null
492 * (SQL type: int unsigned)
493 * Note that values will be retrieved from the database as a string.
495 public $max_additional_participants;
498 * if true - allows the user to register multiple registrations from same email address.
500 * @var bool|string|null
501 * (SQL type: tinyint)
502 * Note that values will be retrieved from the database as a string.
504 public $allow_same_participant_emails;
507 * Whether the event has waitlist support.
509 * @var bool|string|null
510 * (SQL type: tinyint)
511 * Note that values will be retrieved from the database as a string.
513 public $has_waitlist;
516 * Whether participants require approval before they can finish registering.
518 * @var bool|string|null
519 * (SQL type: tinyint)
520 * Note that values will be retrieved from the database as a string.
522 public $requires_approval;
525 * Expire pending but unconfirmed registrations after this many hours.
527 * @var int|string|null
528 * (SQL type: int unsigned)
529 * Note that values will be retrieved from the database as a string.
531 public $expiration_time;
534 * Allow self service cancellation or transfer for event?
536 * @var bool|string|null
537 * (SQL type: tinyint)
538 * Note that values will be retrieved from the database as a string.
540 public $allow_selfcancelxfer;
543 * Number of hours prior to event start date to allow self-service cancellation or transfer.
545 * @var int|string|null
547 * Note that values will be retrieved from the database as a string.
549 public $selfcancelxfer_time;
552 * Text to display when the event is full, but participants can signup for a waitlist.
556 * Note that values will be retrieved from the database as a string.
558 public $waitlist_text;
561 * Text to display when the approval is required to complete registration for an event.
565 * Note that values will be retrieved from the database as a string.
567 public $approval_req_text;
570 * whether the event has template
573 * (SQL type: tinyint)
574 * Note that values will be retrieved from the database as a string.
579 * Event Template Title
582 * (SQL type: varchar(255))
583 * Note that values will be retrieved from the database as a string.
585 public $template_title;
588 * FK to civicrm_contact, who created this event
590 * @var int|string|null
591 * (SQL type: int unsigned)
592 * Note that values will be retrieved from the database as a string.
597 * Date and time that event was created.
600 * (SQL type: datetime)
601 * Note that values will be retrieved from the database as a string.
603 public $created_date;
606 * 3 character string, value from config setting or input via user.
609 * (SQL type: varchar(3))
610 * Note that values will be retrieved from the database as a string.
615 * The campaign for which this event has been created.
617 * @var int|string|null
618 * (SQL type: int unsigned)
619 * Note that values will be retrieved from the database as a string.
624 * Can people share the event through social media?
626 * @var bool|string|null
627 * (SQL type: tinyint)
628 * Note that values will be retrieved from the database as a string.
633 * If false, the event booking confirmation screen gets skipped
635 * @var bool|string|null
636 * (SQL type: tinyint)
637 * Note that values will be retrieved from the database as a string.
639 public $is_confirm_enabled;
642 * Implicit FK to civicrm_event: parent event
644 * @var int|string|null
645 * (SQL type: int unsigned)
646 * Note that values will be retrieved from the database as a string.
648 public $parent_event_id;
651 * Subevent slot label. Implicit FK to civicrm_option_value where option_group = conference_slot.
653 * @var int|string|null
654 * (SQL type: int unsigned)
655 * Note that values will be retrieved from the database as a string.
657 public $slot_label_id;
660 * Rule to use when matching registrations for this event
662 * @var int|string|null
663 * (SQL type: int unsigned)
664 * Note that values will be retrieved from the database as a string.
666 public $dedupe_rule_group_id;
669 * if true than billing block is required this event
671 * @var bool|string|null
672 * (SQL type: tinyint)
673 * Note that values will be retrieved from the database as a string.
675 public $is_billing_required;
678 * Event's native time zone
682 * Note that values will be retrieved from the database as a string.
689 public function __construct() {
690 $this->__table
= 'civicrm_event';
691 parent
::__construct();
695 * Returns localized title of this entity.
697 * @param bool $plural
698 * Whether to return the plural version of the title.
700 public static function getEntityTitle($plural = FALSE) {
701 return $plural ?
ts('Events') : ts('Event');
705 * Returns user-friendly description of this entity.
709 public static function getEntityDescription() {
710 return ts('Scheduled in-person or online events which contacts can register for and attend.');
714 * Returns foreign keys and entity references.
717 * [CRM_Core_Reference_Interface]
719 public static function getReferenceColumns() {
720 if (!isset(Civi
::$statics[__CLASS__
]['links'])) {
721 Civi
::$statics[__CLASS__
]['links'] = static::createReferenceColumns(__CLASS__
);
722 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'loc_block_id', 'civicrm_loc_block', 'id');
723 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'created_id', 'civicrm_contact', 'id');
724 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'campaign_id', 'civicrm_campaign', 'id');
725 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'dedupe_rule_group_id', 'civicrm_dedupe_rule_group', 'id');
726 CRM_Core_DAO_AllCoreTables
::invoke(__CLASS__
, 'links_callback', Civi
::$statics[__CLASS__
]['links']);
728 return Civi
::$statics[__CLASS__
]['links'];
732 * Returns all the column names of this table
736 public static function &fields() {
737 if (!isset(Civi
::$statics[__CLASS__
]['fields'])) {
738 Civi
::$statics[__CLASS__
]['fields'] = [
741 'type' => CRM_Utils_Type
::T_INT
,
742 'title' => ts('Event ID'),
743 'description' => ts('Event'),
745 'where' => 'civicrm_event.id',
746 'table_name' => 'civicrm_event',
748 'bao' => 'CRM_Event_BAO_Event',
758 'type' => CRM_Utils_Type
::T_STRING
,
759 'title' => ts('Event Title'),
760 'description' => ts('Event Title (e.g. Fall Fundraiser Dinner)'),
762 'size' => CRM_Utils_Type
::HUGE
,
764 'where' => 'civicrm_event.title',
765 'headerPattern' => '/(event.)?title$/i',
767 'table_name' => 'civicrm_event',
769 'bao' => 'CRM_Event_BAO_Event',
778 'type' => CRM_Utils_Type
::T_TEXT
,
779 'title' => ts('Event Summary'),
780 '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.'),
783 'where' => 'civicrm_event.summary',
784 'table_name' => 'civicrm_event',
786 'bao' => 'CRM_Event_BAO_Event',
789 'type' => 'TextArea',
793 'event_description' => [
794 'name' => 'description',
795 'type' => CRM_Utils_Type
::T_TEXT
,
796 'title' => ts('Event Description'),
797 'description' => ts('Full description of event. Text and html allowed. Displayed on built-in Event Information screens.'),
800 'where' => 'civicrm_event.description',
801 'table_name' => 'civicrm_event',
803 'bao' => 'CRM_Event_BAO_Event',
806 'type' => 'RichTextEditor',
811 'name' => 'event_type_id',
812 'type' => CRM_Utils_Type
::T_INT
,
813 'title' => ts('Event Type'),
814 'description' => ts('Event Type ID.Implicit FK to civicrm_option_value where option_group = event_type.'),
815 'where' => 'civicrm_event.event_type_id',
817 'table_name' => 'civicrm_event',
819 'bao' => 'CRM_Event_BAO_Event',
824 'pseudoconstant' => [
825 'optionGroupName' => 'event_type',
826 'optionEditPath' => 'civicrm/admin/options/event_type',
830 'participant_listing_id' => [
831 'name' => 'participant_listing_id',
832 'type' => CRM_Utils_Type
::T_INT
,
833 'title' => ts('Participant Listing'),
834 'description' => ts('Should we expose the participant list? Implicit FK to civicrm_option_value where option_group = participant_listing.'),
835 'where' => 'civicrm_event.participant_listing_id',
837 'table_name' => 'civicrm_event',
839 'bao' => 'CRM_Event_BAO_Event',
844 'pseudoconstant' => [
845 'optionGroupName' => 'participant_listing',
846 'optionEditPath' => 'civicrm/admin/options/participant_listing',
851 'name' => 'is_public',
852 'type' => CRM_Utils_Type
::T_BOOLEAN
,
853 'title' => ts('Is Event Public'),
854 'description' => ts('Public events will be included in the iCal feeds. Access to private event information may be limited using ACLs.'),
855 'where' => 'civicrm_event.is_public',
857 'table_name' => 'civicrm_event',
859 'bao' => 'CRM_Event_BAO_Event',
862 'type' => 'CheckBox',
866 'event_start_date' => [
867 'name' => 'start_date',
868 'type' => CRM_Utils_Type
::T_TIMESTAMP
,
869 'title' => ts('Event Start Date'),
870 'description' => ts('Date and time that event starts.'),
873 'where' => 'civicrm_event.start_date',
874 'headerPattern' => '/^start|(s(tart\s)?date)$/i',
877 'table_name' => 'civicrm_event',
879 'bao' => 'CRM_Event_BAO_Event',
882 'type' => 'Select Date',
883 'formatType' => 'activityDateTime',
887 'event_end_date' => [
888 'name' => 'end_date',
889 'type' => CRM_Utils_Type
::T_TIMESTAMP
,
890 'title' => ts('Event End Date'),
891 'description' => ts('Date and time that event ends. May be NULL if no defined end date/time'),
894 'where' => 'civicrm_event.end_date',
895 'headerPattern' => '/^end|(e(nd\s)?date)$/i',
898 'table_name' => 'civicrm_event',
900 'bao' => 'CRM_Event_BAO_Event',
903 'type' => 'Select Date',
904 'formatType' => 'activityDateTime',
908 'is_online_registration' => [
909 'name' => 'is_online_registration',
910 'type' => CRM_Utils_Type
::T_BOOLEAN
,
911 'title' => ts('Is Online Registration'),
912 'description' => ts('If true, include registration link on Event Info page.'),
913 'where' => 'civicrm_event.is_online_registration',
915 'table_name' => 'civicrm_event',
917 'bao' => 'CRM_Event_BAO_Event',
920 'type' => 'CheckBox',
924 'registration_link_text' => [
925 'name' => 'registration_link_text',
926 'type' => CRM_Utils_Type
::T_STRING
,
927 'title' => ts('Event Registration Link Text'),
928 'description' => ts('Text for link to Event Registration form which is displayed on Event Information screen when is_online_registration is true.'),
930 'size' => CRM_Utils_Type
::HUGE
,
931 'where' => 'civicrm_event.registration_link_text',
932 'table_name' => 'civicrm_event',
934 'bao' => 'CRM_Event_BAO_Event',
941 'registration_start_date' => [
942 'name' => 'registration_start_date',
943 'type' => CRM_Utils_Type
::T_TIMESTAMP
,
944 'title' => ts('Registration Start Date'),
945 'description' => ts('Date and time that online registration starts.'),
947 'where' => 'civicrm_event.registration_start_date',
949 'table_name' => 'civicrm_event',
951 'bao' => 'CRM_Event_BAO_Event',
954 'type' => 'Select Date',
955 'formatType' => 'activityDateTime',
956 'label' => ts("Registration Start Date"),
960 'registration_end_date' => [
961 'name' => 'registration_end_date',
962 'type' => CRM_Utils_Type
::T_TIMESTAMP
,
963 'title' => ts('Registration End Date'),
964 'description' => ts('Date and time that online registration ends.'),
966 'where' => 'civicrm_event.registration_end_date',
968 'table_name' => 'civicrm_event',
970 'bao' => 'CRM_Event_BAO_Event',
973 'type' => 'Select Date',
974 'formatType' => 'activityDateTime',
975 'label' => ts("Registration End Date"),
979 'max_participants' => [
980 'name' => 'max_participants',
981 'type' => CRM_Utils_Type
::T_INT
,
982 'title' => ts('Max Participants'),
983 '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.'),
984 'where' => 'civicrm_event.max_participants',
986 'table_name' => 'civicrm_event',
988 'bao' => 'CRM_Event_BAO_Event',
995 'event_full_text' => [
996 'name' => 'event_full_text',
997 'type' => CRM_Utils_Type
::T_TEXT
,
998 'title' => ts('Event Information'),
999 '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.'),
1002 'where' => 'civicrm_event.event_full_text',
1003 'table_name' => 'civicrm_event',
1004 'entity' => 'Event',
1005 'bao' => 'CRM_Event_BAO_Event',
1008 'type' => 'TextArea',
1013 'name' => 'is_monetary',
1014 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1015 'title' => ts('Is this a PAID event?'),
1016 'description' => ts('If true, one or more fee amounts must be set and a Payment Processor must be configured for Online Event Registration.'),
1017 'where' => 'civicrm_event.is_monetary',
1019 'table_name' => 'civicrm_event',
1020 'entity' => 'Event',
1021 'bao' => 'CRM_Event_BAO_Event',
1024 'type' => 'CheckBox',
1028 'financial_type_id' => [
1029 'name' => 'financial_type_id',
1030 'type' => CRM_Utils_Type
::T_INT
,
1031 'title' => ts('Financial Type'),
1032 'description' => ts('Financial type assigned to paid event registrations for this event. Required if is_monetary is true.'),
1033 'where' => 'civicrm_event.financial_type_id',
1035 'table_name' => 'civicrm_event',
1036 'entity' => 'Event',
1037 'bao' => 'CRM_Event_BAO_Event',
1042 'pseudoconstant' => [
1043 'table' => 'civicrm_financial_type',
1044 'keyColumn' => 'id',
1045 'labelColumn' => 'name',
1049 'payment_processor' => [
1050 'name' => 'payment_processor',
1051 'type' => CRM_Utils_Type
::T_STRING
,
1052 'title' => ts('Payment Processor'),
1053 'description' => ts('Payment Processors configured for this Event (if is_monetary is true)'),
1055 'size' => CRM_Utils_Type
::HUGE
,
1056 'where' => 'civicrm_event.payment_processor',
1057 'table_name' => 'civicrm_event',
1058 'entity' => 'Event',
1059 'bao' => 'CRM_Event_BAO_Event',
1061 'serialize' => self
::SERIALIZE_SEPARATOR_TRIMMED
,
1064 'label' => ts("Payment Processors"),
1066 'pseudoconstant' => [
1067 'table' => 'civicrm_payment_processor',
1068 'keyColumn' => 'id',
1069 'labelColumn' => 'name',
1075 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1076 'title' => ts('Map Enabled'),
1077 'description' => ts('Include a map block on the Event Information page when geocode info is available and a mapping provider has been specified?'),
1078 'where' => 'civicrm_event.is_map',
1080 'table_name' => 'civicrm_event',
1081 'entity' => 'Event',
1082 'bao' => 'CRM_Event_BAO_Event',
1085 'type' => 'CheckBox',
1090 'name' => 'is_active',
1091 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1092 'title' => ts('Is Active'),
1093 'description' => ts('Is this Event enabled or disabled/cancelled?'),
1094 'where' => 'civicrm_event.is_active',
1096 'table_name' => 'civicrm_event',
1097 'entity' => 'Event',
1098 'bao' => 'CRM_Event_BAO_Event',
1101 'type' => 'CheckBox',
1106 'name' => 'fee_label',
1107 'type' => CRM_Utils_Type
::T_STRING
,
1108 'title' => ts('Fee Label'),
1110 'size' => CRM_Utils_Type
::HUGE
,
1112 'where' => 'civicrm_event.fee_label',
1113 'headerPattern' => '/^fee|(f(ee\s)?label)$/i',
1115 'table_name' => 'civicrm_event',
1116 'entity' => 'Event',
1117 'bao' => 'CRM_Event_BAO_Event',
1124 'is_show_location' => [
1125 'name' => 'is_show_location',
1126 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1127 'title' => ts('show location'),
1128 'description' => ts('If true, show event location.'),
1129 'where' => 'civicrm_event.is_show_location',
1131 'table_name' => 'civicrm_event',
1132 'entity' => 'Event',
1133 'bao' => 'CRM_Event_BAO_Event',
1136 'type' => 'CheckBox',
1141 'name' => 'loc_block_id',
1142 'type' => CRM_Utils_Type
::T_INT
,
1143 'title' => ts('Location Block ID'),
1144 'description' => ts('FK to Location Block ID'),
1145 'where' => 'civicrm_event.loc_block_id',
1146 'table_name' => 'civicrm_event',
1147 'entity' => 'Event',
1148 'bao' => 'CRM_Event_BAO_Event',
1150 'FKClassName' => 'CRM_Core_DAO_LocBlock',
1152 'label' => ts("Location Block"),
1156 'default_role_id' => [
1157 'name' => 'default_role_id',
1158 'type' => CRM_Utils_Type
::T_INT
,
1159 'title' => ts('Default Role'),
1160 'description' => ts('Participant role ID. Implicit FK to civicrm_option_value where option_group = participant_role.'),
1162 'where' => 'civicrm_event.default_role_id',
1165 'table_name' => 'civicrm_event',
1166 'entity' => 'Event',
1167 'bao' => 'CRM_Event_BAO_Event',
1172 'pseudoconstant' => [
1173 'optionGroupName' => 'participant_role',
1174 'optionEditPath' => 'civicrm/admin/options/participant_role',
1179 'name' => 'intro_text',
1180 'type' => CRM_Utils_Type
::T_TEXT
,
1181 'title' => ts('Introductory Message'),
1182 'description' => ts('Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.'),
1185 'where' => 'civicrm_event.intro_text',
1186 'table_name' => 'civicrm_event',
1187 'entity' => 'Event',
1188 'bao' => 'CRM_Event_BAO_Event',
1191 'type' => 'RichTextEditor',
1196 'name' => 'footer_text',
1197 'type' => CRM_Utils_Type
::T_TEXT
,
1198 'title' => ts('Footer Message'),
1199 'description' => ts('Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.'),
1202 'where' => 'civicrm_event.footer_text',
1203 'table_name' => 'civicrm_event',
1204 'entity' => 'Event',
1205 'bao' => 'CRM_Event_BAO_Event',
1208 'type' => 'RichTextEditor',
1212 'confirm_title' => [
1213 'name' => 'confirm_title',
1214 'type' => CRM_Utils_Type
::T_STRING
,
1215 'title' => ts('Confirmation Title'),
1216 'description' => ts('Title for Confirmation page.'),
1218 'size' => CRM_Utils_Type
::HUGE
,
1219 'where' => 'civicrm_event.confirm_title',
1221 'table_name' => 'civicrm_event',
1222 'entity' => 'Event',
1223 'bao' => 'CRM_Event_BAO_Event',
1231 'name' => 'confirm_text',
1232 'type' => CRM_Utils_Type
::T_TEXT
,
1233 'title' => ts('Confirm Text'),
1234 'description' => ts('Introductory message for Event Registration page. Text and html allowed. Displayed at the top of Event Registration form.'),
1237 'where' => 'civicrm_event.confirm_text',
1238 'table_name' => 'civicrm_event',
1239 'entity' => 'Event',
1240 'bao' => 'CRM_Event_BAO_Event',
1243 'type' => 'RichTextEditor',
1247 'confirm_footer_text' => [
1248 'name' => 'confirm_footer_text',
1249 'type' => CRM_Utils_Type
::T_TEXT
,
1250 'title' => ts('Footer Text'),
1251 'description' => ts('Footer message for Event Registration page. Text and html allowed. Displayed at the bottom of Event Registration form.'),
1254 'where' => 'civicrm_event.confirm_footer_text',
1255 'table_name' => 'civicrm_event',
1256 'entity' => 'Event',
1257 'bao' => 'CRM_Event_BAO_Event',
1260 'type' => 'RichTextEditor',
1264 'is_email_confirm' => [
1265 'name' => 'is_email_confirm',
1266 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1267 'title' => ts('Is confirm email'),
1268 'description' => ts('If true, confirmation is automatically emailed to contact on successful registration.'),
1269 'where' => 'civicrm_event.is_email_confirm',
1271 'table_name' => 'civicrm_event',
1272 'entity' => 'Event',
1273 'bao' => 'CRM_Event_BAO_Event',
1276 'type' => 'CheckBox',
1280 'confirm_email_text' => [
1281 'name' => 'confirm_email_text',
1282 'type' => CRM_Utils_Type
::T_TEXT
,
1283 'title' => ts('Confirmation Email Text'),
1284 'description' => ts('text to include above standard event info on confirmation email. emails are text-only, so do not allow html for now'),
1287 'where' => 'civicrm_event.confirm_email_text',
1288 'table_name' => 'civicrm_event',
1289 'entity' => 'Event',
1290 'bao' => 'CRM_Event_BAO_Event',
1293 'type' => 'TextArea',
1297 'confirm_from_name' => [
1298 'name' => 'confirm_from_name',
1299 'type' => CRM_Utils_Type
::T_STRING
,
1300 'title' => ts('Confirm From Name'),
1301 'description' => ts('FROM email name used for confirmation emails.'),
1303 'size' => CRM_Utils_Type
::HUGE
,
1304 'where' => 'civicrm_event.confirm_from_name',
1305 'table_name' => 'civicrm_event',
1306 'entity' => 'Event',
1307 'bao' => 'CRM_Event_BAO_Event',
1314 'confirm_from_email' => [
1315 'name' => 'confirm_from_email',
1316 'type' => CRM_Utils_Type
::T_STRING
,
1317 'title' => ts('Confirm From Email'),
1318 'description' => ts('FROM email address used for confirmation emails.'),
1320 'size' => CRM_Utils_Type
::HUGE
,
1321 'where' => 'civicrm_event.confirm_from_email',
1322 'table_name' => 'civicrm_event',
1323 'entity' => 'Event',
1324 'bao' => 'CRM_Event_BAO_Event',
1332 'name' => 'cc_confirm',
1333 'type' => CRM_Utils_Type
::T_STRING
,
1334 'title' => ts('Cc Confirm'),
1335 'description' => ts('comma-separated list of email addresses to cc each time a confirmation is sent'),
1337 'size' => CRM_Utils_Type
::HUGE
,
1338 'where' => 'civicrm_event.cc_confirm',
1339 'table_name' => 'civicrm_event',
1340 'entity' => 'Event',
1341 'bao' => 'CRM_Event_BAO_Event',
1345 'label' => ts("CC Confirm"),
1350 'name' => 'bcc_confirm',
1351 'type' => CRM_Utils_Type
::T_STRING
,
1352 'title' => ts('Bcc Confirm'),
1353 'description' => ts('comma-separated list of email addresses to bcc each time a confirmation is sent'),
1355 'size' => CRM_Utils_Type
::HUGE
,
1356 'where' => 'civicrm_event.bcc_confirm',
1357 'table_name' => 'civicrm_event',
1358 'entity' => 'Event',
1359 'bao' => 'CRM_Event_BAO_Event',
1363 'label' => ts("BCC Confirm"),
1367 'default_fee_id' => [
1368 'name' => 'default_fee_id',
1369 'type' => CRM_Utils_Type
::T_INT
,
1370 'title' => ts('Default Fee ID'),
1371 'description' => ts('FK to civicrm_option_value.'),
1372 'where' => 'civicrm_event.default_fee_id',
1373 'table_name' => 'civicrm_event',
1374 'entity' => 'Event',
1375 'bao' => 'CRM_Event_BAO_Event',
1379 'default_discount_fee_id' => [
1380 'name' => 'default_discount_fee_id',
1381 'type' => CRM_Utils_Type
::T_INT
,
1382 'title' => ts('Default Discount Fee ID'),
1383 'description' => ts('FK to civicrm_option_value.'),
1384 'where' => 'civicrm_event.default_discount_fee_id',
1385 'table_name' => 'civicrm_event',
1386 'entity' => 'Event',
1387 'bao' => 'CRM_Event_BAO_Event',
1391 'thankyou_title' => [
1392 'name' => 'thankyou_title',
1393 'type' => CRM_Utils_Type
::T_STRING
,
1394 'title' => ts('ThankYou Title'),
1395 'description' => ts('Title for ThankYou page.'),
1397 'size' => CRM_Utils_Type
::HUGE
,
1398 'where' => 'civicrm_event.thankyou_title',
1400 'table_name' => 'civicrm_event',
1401 'entity' => 'Event',
1402 'bao' => 'CRM_Event_BAO_Event',
1409 'thankyou_text' => [
1410 'name' => 'thankyou_text',
1411 'type' => CRM_Utils_Type
::T_TEXT
,
1412 'title' => ts('ThankYou Text'),
1413 'description' => ts('ThankYou Text.'),
1416 'where' => 'civicrm_event.thankyou_text',
1417 'table_name' => 'civicrm_event',
1418 'entity' => 'Event',
1419 'bao' => 'CRM_Event_BAO_Event',
1422 'type' => 'RichTextEditor',
1426 'thankyou_footer_text' => [
1427 'name' => 'thankyou_footer_text',
1428 'type' => CRM_Utils_Type
::T_TEXT
,
1429 'title' => ts('Footer Text'),
1430 'description' => ts('Footer message.'),
1433 'where' => 'civicrm_event.thankyou_footer_text',
1434 'table_name' => 'civicrm_event',
1435 'entity' => 'Event',
1436 'bao' => 'CRM_Event_BAO_Event',
1439 'type' => 'RichTextEditor',
1444 'name' => 'is_pay_later',
1445 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1446 'title' => ts('Pay Later Allowed'),
1447 'description' => ts('if true - allows the user to send payment directly to the org later'),
1448 'where' => 'civicrm_event.is_pay_later',
1450 'table_name' => 'civicrm_event',
1451 'entity' => 'Event',
1452 'bao' => 'CRM_Event_BAO_Event',
1455 'type' => 'CheckBox',
1459 'pay_later_text' => [
1460 'name' => 'pay_later_text',
1461 'type' => CRM_Utils_Type
::T_TEXT
,
1462 'title' => ts('Pay Later Text'),
1463 'description' => ts('The text displayed to the user in the main form'),
1464 'where' => 'civicrm_event.pay_later_text',
1465 'table_name' => 'civicrm_event',
1466 'entity' => 'Event',
1467 'bao' => 'CRM_Event_BAO_Event',
1470 'type' => 'RichTextEditor',
1474 'pay_later_receipt' => [
1475 'name' => 'pay_later_receipt',
1476 'type' => CRM_Utils_Type
::T_TEXT
,
1477 'title' => ts('Pay Later Receipt Text'),
1478 'description' => ts('The receipt sent to the user instead of the normal receipt text'),
1479 'where' => 'civicrm_event.pay_later_receipt',
1480 'table_name' => 'civicrm_event',
1481 'entity' => 'Event',
1482 'bao' => 'CRM_Event_BAO_Event',
1489 'is_partial_payment' => [
1490 'name' => 'is_partial_payment',
1491 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1492 'title' => ts('Partial Payments Enabled'),
1493 'description' => ts('is partial payment enabled for this event'),
1494 'where' => 'civicrm_event.is_partial_payment',
1496 'table_name' => 'civicrm_event',
1497 'entity' => 'Event',
1498 'bao' => 'CRM_Event_BAO_Event',
1501 'type' => 'CheckBox',
1505 'initial_amount_label' => [
1506 'name' => 'initial_amount_label',
1507 'type' => CRM_Utils_Type
::T_STRING
,
1508 'title' => ts('Initial Amount Label'),
1509 'description' => ts('Initial amount label for partial payment'),
1511 'size' => CRM_Utils_Type
::HUGE
,
1512 'where' => 'civicrm_event.initial_amount_label',
1513 'table_name' => 'civicrm_event',
1514 'entity' => 'Event',
1515 'bao' => 'CRM_Event_BAO_Event',
1522 'initial_amount_help_text' => [
1523 'name' => 'initial_amount_help_text',
1524 'type' => CRM_Utils_Type
::T_TEXT
,
1525 'title' => ts('Initial Amount Help Text'),
1526 'description' => ts('Initial amount help text for partial payment'),
1527 'where' => 'civicrm_event.initial_amount_help_text',
1528 'table_name' => 'civicrm_event',
1529 'entity' => 'Event',
1530 'bao' => 'CRM_Event_BAO_Event',
1537 'min_initial_amount' => [
1538 'name' => 'min_initial_amount',
1539 'type' => CRM_Utils_Type
::T_MONEY
,
1540 'title' => ts('Minimum Initial Amount'),
1541 'description' => ts('Minimum initial amount for partial payment'),
1546 'where' => 'civicrm_event.min_initial_amount',
1547 'table_name' => 'civicrm_event',
1548 'entity' => 'Event',
1549 'bao' => 'CRM_Event_BAO_Event',
1556 'is_multiple_registrations' => [
1557 'name' => 'is_multiple_registrations',
1558 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1559 'title' => ts('Allow Multiple Registrations'),
1560 'description' => ts('if true - allows the user to register multiple participants for event'),
1561 'where' => 'civicrm_event.is_multiple_registrations',
1563 'table_name' => 'civicrm_event',
1564 'entity' => 'Event',
1565 'bao' => 'CRM_Event_BAO_Event',
1568 'type' => 'CheckBox',
1572 'max_additional_participants' => [
1573 'name' => 'max_additional_participants',
1574 'type' => CRM_Utils_Type
::T_INT
,
1575 'title' => ts('Maximum number of additional participants per registration'),
1576 'description' => ts('Maximum number of additional participants that can be registered on a single booking'),
1577 'where' => 'civicrm_event.max_additional_participants',
1579 'table_name' => 'civicrm_event',
1580 'entity' => 'Event',
1581 'bao' => 'CRM_Event_BAO_Event',
1585 'allow_same_participant_emails' => [
1586 'name' => 'allow_same_participant_emails',
1587 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1588 'title' => ts('Does Event allow multiple registrations from same email address?'),
1589 'description' => ts('if true - allows the user to register multiple registrations from same email address.'),
1590 'where' => 'civicrm_event.allow_same_participant_emails',
1592 'table_name' => 'civicrm_event',
1593 'entity' => 'Event',
1594 'bao' => 'CRM_Event_BAO_Event',
1597 'type' => 'CheckBox',
1602 'name' => 'has_waitlist',
1603 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1604 'title' => ts('Waitlist Enabled'),
1605 'description' => ts('Whether the event has waitlist support.'),
1606 'where' => 'civicrm_event.has_waitlist',
1607 'table_name' => 'civicrm_event',
1608 'entity' => 'Event',
1609 'bao' => 'CRM_Event_BAO_Event',
1612 'type' => 'CheckBox',
1616 'requires_approval' => [
1617 'name' => 'requires_approval',
1618 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1619 'title' => ts('Requires Approval'),
1620 'description' => ts('Whether participants require approval before they can finish registering.'),
1621 'where' => 'civicrm_event.requires_approval',
1622 'table_name' => 'civicrm_event',
1623 'entity' => 'Event',
1624 'bao' => 'CRM_Event_BAO_Event',
1627 'type' => 'CheckBox',
1628 'label' => ts("Requires Approval"),
1632 'expiration_time' => [
1633 'name' => 'expiration_time',
1634 'type' => CRM_Utils_Type
::T_INT
,
1635 'title' => ts('Expiration Time'),
1636 'description' => ts('Expire pending but unconfirmed registrations after this many hours.'),
1637 'where' => 'civicrm_event.expiration_time',
1638 'table_name' => 'civicrm_event',
1639 'entity' => 'Event',
1640 'bao' => 'CRM_Event_BAO_Event',
1644 'label' => ts("Expiration Time"),
1648 'allow_selfcancelxfer' => [
1649 'name' => 'allow_selfcancelxfer',
1650 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1651 'title' => ts('Allow Self-service Cancellation or Transfer'),
1652 'description' => ts('Allow self service cancellation or transfer for event?'),
1653 'where' => 'civicrm_event.allow_selfcancelxfer',
1655 'table_name' => 'civicrm_event',
1656 'entity' => 'Event',
1657 'bao' => 'CRM_Event_BAO_Event',
1660 'type' => 'CheckBox',
1664 'selfcancelxfer_time' => [
1665 'name' => 'selfcancelxfer_time',
1666 'type' => CRM_Utils_Type
::T_INT
,
1667 'title' => ts('Self-service Cancellation or Transfer Time'),
1668 'description' => ts('Number of hours prior to event start date to allow self-service cancellation or transfer.'),
1669 'where' => 'civicrm_event.selfcancelxfer_time',
1671 'table_name' => 'civicrm_event',
1672 'entity' => 'Event',
1673 'bao' => 'CRM_Event_BAO_Event',
1680 'waitlist_text' => [
1681 'name' => 'waitlist_text',
1682 'type' => CRM_Utils_Type
::T_TEXT
,
1683 'title' => ts('Waitlist Text'),
1684 'description' => ts('Text to display when the event is full, but participants can signup for a waitlist.'),
1687 'where' => 'civicrm_event.waitlist_text',
1688 'table_name' => 'civicrm_event',
1689 'entity' => 'Event',
1690 'bao' => 'CRM_Event_BAO_Event',
1693 'type' => 'TextArea',
1694 'label' => ts("Waitlist Text"),
1698 'approval_req_text' => [
1699 'name' => 'approval_req_text',
1700 'type' => CRM_Utils_Type
::T_TEXT
,
1701 'title' => ts('Approval Req Text'),
1702 'description' => ts('Text to display when the approval is required to complete registration for an event.'),
1705 'where' => 'civicrm_event.approval_req_text',
1706 'table_name' => 'civicrm_event',
1707 'entity' => 'Event',
1708 'bao' => 'CRM_Event_BAO_Event',
1711 'type' => 'TextArea',
1712 'label' => ts("Approval Required Text"),
1717 'name' => 'is_template',
1718 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1719 'title' => ts('Is an Event Template'),
1720 'description' => ts('whether the event has template'),
1722 'where' => 'civicrm_event.is_template',
1724 'table_name' => 'civicrm_event',
1725 'entity' => 'Event',
1726 'bao' => 'CRM_Event_BAO_Event',
1729 'type' => 'CheckBox',
1733 'template_title' => [
1734 'name' => 'template_title',
1735 'type' => CRM_Utils_Type
::T_STRING
,
1736 'title' => ts('Event Template Title'),
1737 'description' => ts('Event Template Title'),
1739 'size' => CRM_Utils_Type
::HUGE
,
1741 'where' => 'civicrm_event.template_title',
1742 'headerPattern' => '/(template.)?title$/i',
1744 'table_name' => 'civicrm_event',
1745 'entity' => 'Event',
1746 'bao' => 'CRM_Event_BAO_Event',
1754 'name' => 'created_id',
1755 'type' => CRM_Utils_Type
::T_INT
,
1756 'title' => ts('Created By Contact ID'),
1757 'description' => ts('FK to civicrm_contact, who created this event'),
1758 'where' => 'civicrm_event.created_id',
1759 'table_name' => 'civicrm_event',
1760 'entity' => 'Event',
1761 'bao' => 'CRM_Event_BAO_Event',
1763 'FKClassName' => 'CRM_Contact_DAO_Contact',
1765 'label' => ts("Created By"),
1770 'name' => 'created_date',
1771 'type' => CRM_Utils_Type
::T_DATE + CRM_Utils_Type
::T_TIME
,
1772 'title' => ts('Event Created Date'),
1773 'description' => ts('Date and time that event was created.'),
1774 'where' => 'civicrm_event.created_date',
1775 'table_name' => 'civicrm_event',
1776 'entity' => 'Event',
1777 'bao' => 'CRM_Event_BAO_Event',
1782 'name' => 'currency',
1783 'type' => CRM_Utils_Type
::T_STRING
,
1784 'title' => ts('Currency'),
1785 'description' => ts('3 character string, value from config setting or input via user.'),
1787 'size' => CRM_Utils_Type
::FOUR
,
1789 'where' => 'civicrm_event.currency',
1790 'headerPattern' => '/cur(rency)?/i',
1791 'dataPattern' => '/^[A-Z]{3}$/i',
1793 'table_name' => 'civicrm_event',
1794 'entity' => 'Event',
1795 'bao' => 'CRM_Event_BAO_Event',
1799 'label' => ts("Currency"),
1801 'pseudoconstant' => [
1802 'table' => 'civicrm_currency',
1803 'keyColumn' => 'name',
1804 'labelColumn' => 'full_name',
1805 'nameColumn' => 'name',
1806 'abbrColumn' => 'symbol',
1811 'name' => 'campaign_id',
1812 'type' => CRM_Utils_Type
::T_INT
,
1813 'title' => ts('Campaign ID'),
1814 'description' => ts('The campaign for which this event has been created.'),
1815 'where' => 'civicrm_event.campaign_id',
1816 'table_name' => 'civicrm_event',
1817 'entity' => 'Event',
1818 'bao' => 'CRM_Event_BAO_Event',
1820 'FKClassName' => 'CRM_Campaign_DAO_Campaign',
1821 'component' => 'CiviCampaign',
1823 'type' => 'EntityRef',
1824 'label' => ts("Campaign"),
1826 'pseudoconstant' => [
1827 'table' => 'civicrm_campaign',
1828 'keyColumn' => 'id',
1829 'labelColumn' => 'title',
1830 'prefetch' => 'FALSE',
1835 'name' => 'is_share',
1836 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1837 'title' => ts('Is shared through social media'),
1838 'description' => ts('Can people share the event through social media?'),
1839 'where' => 'civicrm_event.is_share',
1841 'table_name' => 'civicrm_event',
1842 'entity' => 'Event',
1843 'bao' => 'CRM_Event_BAO_Event',
1846 'type' => 'CheckBox',
1850 'is_confirm_enabled' => [
1851 'name' => 'is_confirm_enabled',
1852 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1853 'title' => ts('Is the booking confirmation screen enabled?'),
1854 'description' => ts('If false, the event booking confirmation screen gets skipped'),
1855 'where' => 'civicrm_event.is_confirm_enabled',
1857 'table_name' => 'civicrm_event',
1858 'entity' => 'Event',
1859 'bao' => 'CRM_Event_BAO_Event',
1862 'type' => 'CheckBox',
1866 'parent_event_id' => [
1867 'name' => 'parent_event_id',
1868 'type' => CRM_Utils_Type
::T_INT
,
1869 'title' => ts('Parent Event ID'),
1870 'description' => ts('Implicit FK to civicrm_event: parent event'),
1871 'where' => 'civicrm_event.parent_event_id',
1873 'table_name' => 'civicrm_event',
1874 'entity' => 'Event',
1875 'bao' => 'CRM_Event_BAO_Event',
1878 'type' => 'EntityRef',
1882 'slot_label_id' => [
1883 'name' => 'slot_label_id',
1884 'type' => CRM_Utils_Type
::T_INT
,
1885 'title' => ts('Subevent Slot Label ID'),
1886 'description' => ts('Subevent slot label. Implicit FK to civicrm_option_value where option_group = conference_slot.'),
1887 'where' => 'civicrm_event.slot_label_id',
1889 'table_name' => 'civicrm_event',
1890 'entity' => 'Event',
1891 'bao' => 'CRM_Event_BAO_Event',
1898 'dedupe_rule_group_id' => [
1899 'name' => 'dedupe_rule_group_id',
1900 'type' => CRM_Utils_Type
::T_INT
,
1901 'title' => ts('Dedupe Rule ID'),
1902 'description' => ts('Rule to use when matching registrations for this event'),
1903 'where' => 'civicrm_event.dedupe_rule_group_id',
1905 'table_name' => 'civicrm_event',
1906 'entity' => 'Event',
1907 'bao' => 'CRM_Event_BAO_Event',
1909 'FKClassName' => 'CRM_Dedupe_DAO_DedupeRuleGroup',
1912 'label' => ts("Dedupe Rule"),
1914 'pseudoconstant' => [
1915 'table' => 'civicrm_dedupe_rule_group',
1916 'keyColumn' => 'id',
1917 'labelColumn' => 'title',
1918 'nameColumn' => 'name',
1922 'is_billing_required' => [
1923 'name' => 'is_billing_required',
1924 'type' => CRM_Utils_Type
::T_BOOLEAN
,
1925 'title' => ts('Is billing block required'),
1926 'description' => ts('if true than billing block is required this event'),
1927 'where' => 'civicrm_event.is_billing_required',
1929 'table_name' => 'civicrm_event',
1930 'entity' => 'Event',
1931 'bao' => 'CRM_Event_BAO_Event',
1934 'type' => 'CheckBox',
1939 'name' => 'event_tz',
1940 'type' => CRM_Utils_Type
::T_TEXT
,
1941 'title' => ts('Event Time Zone'),
1942 'description' => ts('Event\'s native time zone'),
1944 'where' => 'civicrm_event.event_tz',
1947 'table_name' => 'civicrm_event',
1948 'entity' => 'Event',
1949 'bao' => 'CRM_Event_BAO_Event',
1954 'pseudoconstant' => [
1955 'callback' => 'CRM_Core_SelectValues::timezone',
1960 CRM_Core_DAO_AllCoreTables
::invoke(__CLASS__
, 'fields_callback', Civi
::$statics[__CLASS__
]['fields']);
1962 return Civi
::$statics[__CLASS__
]['fields'];
1966 * Return a mapping from field-name to the corresponding key (as used in fields()).
1969 * Array(string $name => string $uniqueName).
1971 public static function &fieldKeys() {
1972 if (!isset(Civi
::$statics[__CLASS__
]['fieldKeys'])) {
1973 Civi
::$statics[__CLASS__
]['fieldKeys'] = array_flip(CRM_Utils_Array
::collect('name', self
::fields()));
1975 return Civi
::$statics[__CLASS__
]['fieldKeys'];
1979 * Returns the names of this table
1983 public static function getTableName() {
1984 return CRM_Core_DAO
::getLocaleTableName(self
::$_tableName);
1988 * Returns if this table needs to be logged
1992 public function getLog() {
1997 * Returns the list of fields that can be imported
1999 * @param bool $prefix
2003 public static function &import($prefix = FALSE) {
2004 $r = CRM_Core_DAO_AllCoreTables
::getImports(__CLASS__
, 'event', $prefix, []);
2009 * Returns the list of fields that can be exported
2011 * @param bool $prefix
2015 public static function &export($prefix = FALSE) {
2016 $r = CRM_Core_DAO_AllCoreTables
::getExports(__CLASS__
, 'event', $prefix, []);
2021 * Returns the list of indices
2023 * @param bool $localize
2027 public static function indices($localize = TRUE) {
2029 'index_event_type_id' => [
2030 'name' => 'index_event_type_id',
2032 0 => 'event_type_id',
2034 'localizable' => FALSE,
2035 'sig' => 'civicrm_event::0::event_type_id',
2037 'index_participant_listing_id' => [
2038 'name' => 'index_participant_listing_id',
2040 0 => 'participant_listing_id',
2042 'localizable' => FALSE,
2043 'sig' => 'civicrm_event::0::participant_listing_id',
2045 'index_parent_event_id' => [
2046 'name' => 'index_parent_event_id',
2048 0 => 'parent_event_id',
2050 'localizable' => FALSE,
2051 'sig' => 'civicrm_event::0::parent_event_id',
2054 return ($localize && !empty($indices)) ? CRM_Core_DAO_AllCoreTables
::multilingualize(__CLASS__
, $indices) : $indices;