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