Merge pull request #21646 from MegaphoneJon/core-2874
[civicrm-core.git] / xml / schema / Event / Participant.xml
CommitLineData
3c7d2158 1<?xml version="1.0" encoding="iso-8859-1" ?>
2
3<table>
4 <base>CRM/Event</base>
5 <class>Participant</class>
6 <name>civicrm_participant</name>
2562d09a 7 <description>Records of contacts' attendance and roles in events.</description>
3c7d2158 8 <add>1.7</add>
6a488035 9 <log>true</log>
449c4e6b 10 <icon>fa-ticket</icon>
d31fb4e3 11 <component>CiviEvent</component>
3c7d2158 12 <field>
8f069c03
EM
13 <name>id</name>
14 <uniqueName>participant_id</uniqueName>
15 <title>Participant ID</title>
16 <type>int unsigned</type>
17 <required>true</required>
047c5009 18 <comment>Participant ID</comment>
8f069c03
EM
19 <import>true</import>
20 <headerPattern>/(^(participant(.)?)?id$)/i</headerPattern>
0481e12c
A
21 <html>
22 <type>Number</type>
23 </html>
8f069c03 24 <add>1.7</add>
3c7d2158 25 </field>
26 <primaryKey>
8f069c03
EM
27 <name>id</name>
28 <autoincrement>true</autoincrement>
3c7d2158 29 </primaryKey>
30 <field>
8f069c03
EM
31 <name>contact_id</name>
32 <uniqueName>participant_contact_id</uniqueName>
33 <type>int unsigned</type>
34 <title>Contact ID</title>
35 <headerPattern>/contact(.?id)?/i</headerPattern>
36 <import>true</import>
37 <required>true</required>
38 <comment>FK to Contact ID</comment>
57e94608
A
39 <html>
40 <label>Contact</label>
41 </html>
8f069c03 42 <add>1.7</add>
6a488035 43 </field>
3c7d2158 44 <foreignKey>
8f069c03
EM
45 <name>contact_id</name>
46 <table>civicrm_contact</table>
47 <key>id</key>
48 <onDelete>CASCADE</onDelete>
6a488035 49 </foreignKey>
3c7d2158 50 <field>
8f069c03
EM
51 <name>event_id</name>
52 <type>int unsigned</type>
57e94608 53 <title>Event ID</title>
8f069c03
EM
54 <import>true</import>
55 <headerPattern>/event id$/i</headerPattern>
56 <required>true</required>
57 <comment>FK to Event ID</comment>
57e94608
A
58 <html>
59 <label>Event</label>
60 </html>
8f069c03 61 <add>1.7</add>
6a488035 62 </field>
3c7d2158 63 <foreignKey>
8f069c03
EM
64 <name>event_id</name>
65 <table>civicrm_event</table>
66 <key>id</key>
67 <onDelete>CASCADE</onDelete>
6a488035 68 </foreignKey>
3c7d2158 69 <field>
8f069c03
EM
70 <name>status_id</name>
71 <uniqueName>participant_status_id</uniqueName>
047c5009 72 <title>Status ID</title>
8f069c03
EM
73 <headerPattern>/(participant.)?(status)$/i</headerPattern>
74 <import>true</import>
75 <type>int unsigned</type>
e51b7372 76 <export>true</export>
8f069c03
EM
77 <required>true</required>
78 <default>1</default>
bd7d6a3d 79 <comment>Participant status ID. FK to civicrm_participant_status_type. Default of 1 should map to status = Registered.</comment>
8f069c03
EM
80 <add>1.7</add>
81 <pseudoconstant>
82 <table>civicrm_participant_status_type</table>
83 <keyColumn>id</keyColumn>
84 <labelColumn>label</labelColumn>
85 </pseudoconstant>
86 <html>
87 <type>Select</type>
047c5009 88 <label>Status</label>
8f069c03 89 </html>
6a488035
TO
90 </field>
91 <foreignKey>
92 <name>status_id</name>
93 <table>civicrm_participant_status_type</table>
94 <key>id</key>
95 <add>3.0</add>
96 </foreignKey>
97 <index>
98 <name>index_status_id</name>
99 <fieldName>status_id</fieldName>
100 <add>1.8</add>
101 </index>
3c7d2158 102 <field>
8f069c03
EM
103 <name>role_id</name>
104 <uniqueName>participant_role_id</uniqueName>
210ff615 105 <title>Participant Role ID</title>
8f069c03
EM
106 <pseudoconstant>
107 <optionGroupName>participant_role</optionGroupName>
108 </pseudoconstant>
109 <html>
110 <type>Select</type>
2a5c9b4d 111 <multiple>1</multiple>
210ff615 112 <label>Participant Role</label>
8f069c03 113 </html>
2a5c9b4d 114 <serialize>SEPARATOR_TRIMMED</serialize>
8f069c03
EM
115 <headerPattern>/(participant.)?(role)$/i</headerPattern>
116 <import>true</import>
117 <type>varchar</type>
118 <length>128</length>
f5d67b2a 119 <export>true</export>
8f069c03
EM
120 <default>NULL</default>
121 <comment>Participant role ID. Implicit FK to civicrm_option_value where option_group = participant_role.</comment>
122 <add>1.7</add>
6a488035
TO
123 </field>
124 <index>
125 <name>index_role_id</name>
126 <fieldName>role_id</fieldName>
127 <add>1.8</add>
128 </index>
3c7d2158 129 <field>
8f069c03
EM
130 <name>register_date</name>
131 <uniqueName>participant_register_date</uniqueName>
132 <title>Register date</title>
133 <headerPattern>/^(r(egister\s)?date)$/i</headerPattern>
134 <import>true</import>
135 <type>datetime</type>
136 <comment>When did contact register for event?</comment>
137 <add>1.7</add>
3cef3c00 138 <html>
139 <type>Select Date</type>
24317d89 140 <formatType>activityDateTime</formatType>
3cef3c00 141 </html>
6a488035
TO
142 </field>
143 <field>
8f069c03
EM
144 <name>source</name>
145 <uniqueName>participant_source</uniqueName>
146 <title>Participant Source</title>
147 <headerPattern>/(participant.)?(source)$/i</headerPattern>
148 <import>true</import>
149 <type>varchar</type>
150 <length>128</length>
151 <comment>Source of this event registration.</comment>
c1a6d6ac
SL
152 <html>
153 <type>Text</type>
154 </html>
8f069c03 155 <add>1.7</add>
3c7d2158 156 </field>
157 <field>
8f069c03
EM
158 <name>fee_level</name>
159 <uniqueName>participant_fee_level</uniqueName>
160 <title>Fee level</title>
161 <headerPattern>/^(f(ee\s)?level)$/i</headerPattern>
162 <type>text</type>
163 <import>true</import>
2a5c9b4d 164 <serialize>SEPARATOR_BOOKEND</serialize>
8f069c03 165 <comment>Populate with the label (text) associated with a fee level for paid events with multiple levels. Note that
fb607354 166 we store the label value and not the key</comment>
8f069c03 167 <add>1.7</add>
3c7d2158 168 </field>
169 <field>
8f069c03
EM
170 <name>is_test</name>
171 <uniqueName>participant_is_test</uniqueName>
172 <title>Test</title>
173 <type>boolean</type>
174 <default>0</default>
175 <import>true</import>
176 <add>1.7</add>
6a488035 177 </field>
3c7d2158 178 <field>
8f069c03
EM
179 <name>is_pay_later</name>
180 <uniqueName>participant_is_pay_later</uniqueName>
181 <title>Is Pay Later</title>
182 <type>boolean</type>
183 <default>0</default>
184 <import>true</import>
185 <headerPattern>/(is.)?(pay(.)?later)$/i</headerPattern>
186 <add>2.1</add>
6a488035 187 </field>
3c7d2158 188
189 <field>
8f069c03
EM
190 <name>fee_amount</name>
191 <uniqueName>participant_fee_amount</uniqueName>
192 <title>Fee Amount</title>
193 <type>decimal</type>
194 <import>true</import>
195 <headerPattern>/fee(.?am(ou)?nt)?/i</headerPattern>
196 <dataPattern>/^\d+(\.\d{2})?$/</dataPattern>
197 <comment>actual processor fee if known - may be 0.</comment>
198 <add>2.1</add>
3c7d2158 199 </field>
200 <field>
8f069c03
EM
201 <name>registered_by_id</name>
202 <uniqueName>participant_registered_by_id</uniqueName>
203 <type>int unsigned</type>
57e94608 204 <title>Registered By Participant ID</title>
8f069c03
EM
205 <import>true</import>
206 <default>NULL</default>
207 <comment>FK to Participant ID</comment>
57e94608
A
208 <html>
209 <label>Registered By</label>
210 </html>
8f069c03
EM
211 <add>2.1</add>
212 <export>true</export>
6a488035 213 </field>
3c7d2158 214 <foreignKey>
8f069c03
EM
215 <name>registered_by_id</name>
216 <table>civicrm_participant</table>
217 <key>id</key>
218 <add>2.1</add>
219 <onDelete>SET NULL</onDelete>
3c7d2158 220 </foreignKey>
221 <field>
8f069c03
EM
222 <name>discount_id</name>
223 <uniqueName>participant_discount_id</uniqueName>
224 <type>int unsigned</type>
225 <title>Discount ID</title>
226 <default>NULL</default>
227 <comment>FK to Discount ID</comment>
57e94608
A
228 <html>
229 <label>Discount</label>
230 </html>
8f069c03 231 <add>2.1</add>
6a488035 232 </field>
3c7d2158 233 <foreignKey>
8f069c03
EM
234 <name>discount_id</name>
235 <table>civicrm_discount</table>
236 <key>id</key>
237 <add>2.1</add>
238 <onDelete>SET NULL</onDelete>
3c7d2158 239 </foreignKey>
240 <field>
8f069c03
EM
241 <name>fee_currency</name>
242 <uniqueName>participant_fee_currency</uniqueName>
243 <title>Fee Currency</title>
244 <type>varchar</type>
245 <length>3</length>
246 <default>NULL</default>
247 <import>true</import>
248 <headerPattern>/(fee)?.?cur(rency)?/i</headerPattern>
249 <dataPattern>/^[A-Z]{3}$/i</dataPattern>
250 <comment>3 character string, value derived from config setting.</comment>
251 <add>3.0</add>
252 <pseudoconstant>
253 <table>civicrm_currency</table>
254 <keyColumn>name</keyColumn>
255 <labelColumn>full_name</labelColumn>
c3de5c5a 256 <nameColumn>name</nameColumn>
a8fdb24e 257 <abbrColumn>symbol</abbrColumn>
8f069c03
EM
258 </pseudoconstant>
259 <html>
260 <type>Select</type>
261 </html>
6a488035 262 </field>
3c7d2158 263 <field>
8f069c03 264 <name>campaign_id</name>
88c31c05 265 <component>CiviCampaign</component>
8f069c03
EM
266 <uniqueName>participant_campaign_id</uniqueName>
267 <type>int unsigned</type>
57e94608 268 <title>Campaign ID</title>
8f069c03
EM
269 <import>true</import>
270 <comment>The campaign for which this participant has been registered.</comment>
57e94608 271 <html>
8813f972 272 <type>EntityRef</type>
57e94608
A
273 <label>Campaign</label>
274 </html>
8f069c03 275 <add>3.4</add>
25ad69f2
CW
276 <pseudoconstant>
277 <table>civicrm_campaign</table>
278 <keyColumn>id</keyColumn>
279 <labelColumn>title</labelColumn>
280 <prefetch>FALSE</prefetch>
281 </pseudoconstant>
3c7d2158 282 </field>
283 <foreignKey>
8f069c03
EM
284 <name>campaign_id</name>
285 <table>civicrm_campaign</table>
286 <key>id</key>
287 <onDelete>SET NULL</onDelete>
6a488035
TO
288 </foreignKey>
289 <field>
8f069c03
EM
290 <name>discount_amount</name>
291 <type>int unsigned</type>
292 <title>Discount Amount</title>
293 <comment>Discount Amount</comment>
294 <add>4.1</add>
6a488035
TO
295 </field>
296 <field>
8f069c03
EM
297 <name>cart_id</name>
298 <type>int unsigned</type>
299 <title>Event Cart ID</title>
300 <comment>FK to civicrm_event_carts</comment>
57e94608
A
301 <html>
302 <label>Event Cart</label>
303 </html>
8f069c03 304 <add>4.1</add>
6a488035
TO
305 </field>
306 <foreignKey>
8f069c03
EM
307 <name>cart_id</name>
308 <table>civicrm_event_carts</table>
309 <key>id</key>
310 <onDelete>SET NULL</onDelete>
6a488035
TO
311 </foreignKey>
312 <field>
8f069c03
EM
313 <name>must_wait</name>
314 <type>int</type>
315 <title>Must Wait on List</title>
316 <comment>On Waiting List</comment>
317 <add>4.1</add>
6a488035 318 </field>
7dbb67ae
DG
319 <field>
320 <name>transferred_to_contact_id</name>
321 <uniqueName>transferred_to_contact_id</uniqueName>
322 <type>int unsigned</type>
323 <default>NULL</default>
324 <title>Transferred to Contact ID</title>
325 <headerPattern>/transfer(.?id)?/i</headerPattern>
326 <import>true</import>
327 <comment>FK to Contact ID</comment>
57e94608
A
328 <html>
329 <label>Transferred to</label>
330 </html>
7dbb67ae
DG
331 <add>4.7</add>
332 </field>
333 <foreignKey>
334 <name>transferred_to_contact_id</name>
335 <table>civicrm_contact</table>
336 <key>id</key>
337 <onDelete>SET NULL</onDelete>
338 </foreignKey>
6a488035 339</table>