Added method fieldKeys() to DAOs. CRM-12464
[civicrm-core.git] / xml / schema / Event / Participant.xml
CommitLineData
6a488035
TO
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>
8 <log>true</log>
9 <field>
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>
19 </field>
20 <primaryKey>
21 <name>id</name>
22 <autoincrement>true</autoincrement>
23 </primaryKey>
24 <field>
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 <default>0</default>
32 <comment>FK to Contact ID</comment>
33 <add>1.7</add>
34 </field>
35 <foreignKey>
36 <name>contact_id</name>
37 <table>civicrm_contact</table>
38 <key>id</key>
39 <onDelete>CASCADE</onDelete>
40 </foreignKey>
41 <field>
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 <default>0</default>
48 <comment>FK to Event ID</comment>
49 <add>1.7</add>
50 </field>
51 <foreignKey>
52 <name>event_id</name>
53 <table>civicrm_event</table>
54 <key>id</key>
55 <onDelete>CASCADE</onDelete>
56 </foreignKey>
57 <field>
58 <name>status_id</name>
59 <uniqueName>participant_status_id</uniqueName>
60 <title>Participant Status Id</title>
61 <headerPattern>/(participant.)?(status)$/i</headerPattern>
62 <import>true</import>
63 <type>int unsigned</type>
64 <export>false</export>
65 <required>true</required>
66 <default>1</default>
67 <comment>Participant status ID. FK to civicrm_participant_status_type. Default of 1 should map to status = Registered.</comment>
68 <add>1.7</add>
69 <pseudoconstant>
70 <name>participantStatus</name>
71 <table>civicrm_participant_status</table>
72 <keyColumn>id</keyColumn>
73 <labelColumn>name</labelColumn>
74 <class>CRM_Event_PseudoConstant</class>
75 </pseudoconstant>
76 </field>
77 <foreignKey>
78 <name>status_id</name>
79 <table>civicrm_participant_status_type</table>
80 <key>id</key>
81 <add>3.0</add>
82 </foreignKey>
83 <index>
84 <name>index_status_id</name>
85 <fieldName>status_id</fieldName>
86 <add>1.8</add>
87 </index>
88 <field>
89 <name>role_id</name>
90 <uniqueName>participant_role_id</uniqueName>
91 <title>Participant Role Id</title>
92 <pseudoconstant>
93 <name>participantRole</name>
94 <optionGroupName>participant_role</optionGroupName>
95 <class>CRM_Event_PseudoConstant</class>
96 </pseudoconstant>
97 <headerPattern>/(participant.)?(role)$/i</headerPattern>
98 <import>true</import>
99 <type>varchar</type>
100 <length>128</length>
101 <export>false</export>
102 <default>NULL</default>
103 <comment>Participant role ID. Implicit FK to civicrm_option_value where option_group = participant_role.</comment>
104 <add>1.7</add>
105 </field>
106 <index>
107 <name>index_role_id</name>
108 <fieldName>role_id</fieldName>
109 <add>1.8</add>
110 </index>
111 <field>
112 <name>register_date</name>
113 <uniqueName>participant_register_date</uniqueName>
114 <title>Register date</title>
115 <headerPattern>/^(r(egister\s)?date)$/i</headerPattern>
116 <import>true</import>
117 <type>datetime</type>
118 <comment>When did contact register for event?</comment>
119 <add>1.7</add>
120 </field>
121 <field>
122 <name>source</name>
123 <uniqueName>participant_source</uniqueName>
124 <title>Participant Source</title>
125 <headerPattern>/(participant.)?(source)$/i</headerPattern>
126 <import>true</import>
127 <type>varchar</type>
128 <length>128</length>
129 <comment>Source of this event registration.</comment>
130 <add>1.7</add>
131 </field>
132 <field>
133 <name>fee_level</name>
134 <uniqueName>participant_fee_level</uniqueName>
135 <title>Fee level</title>
136 <headerPattern>/^(f(ee\s)?level)$/i</headerPattern>
137 <type>text</type>
138 <import>true</import>
139 <comment>Populate with the label (text) associated with a fee level for paid events with multiple levels. Note that we store the label value and not the key</comment>
140 <add>1.7</add>
141 </field>
142 <field>
143 <name>is_test</name>
144 <uniqueName>participant_is_test</uniqueName>
145 <title>Test</title>
146 <type>boolean</type>
147 <default>0</default>
148 <import>true</import>
149 <add>1.7</add>
150 </field>
151 <field>
152 <name>is_pay_later</name>
153 <uniqueName>participant_is_pay_later</uniqueName>
154 <title>Is Pay Later</title>
155 <type>boolean</type>
156 <default>0</default>
157 <import>true</import>
158 <headerPattern>/(is.)?(pay(.)?later)$/i</headerPattern>
159 <add>2.1</add>
160 </field>
161
162 <field>
163 <name>fee_amount</name>
164 <uniqueName>participant_fee_amount</uniqueName>
165 <title>Fee Amount</title>
166 <type>decimal</type>
167 <import>true</import>
168 <headerPattern>/fee(.?am(ou)?nt)?/i</headerPattern>
169 <dataPattern>/^\d+(\.\d{2})?$/</dataPattern>
170 <comment>actual processor fee if known - may be 0.</comment>
171 <add>2.1</add>
172 </field>
173 <field>
174 <name>registered_by_id</name>
175 <uniqueName>participant_registered_by_id</uniqueName>
176 <type>int unsigned</type>
177 <title>Registered By ID</title>
178 <import>true</import>
179 <default>NULL</default>
180 <comment>FK to Participant ID</comment>
181 <add>2.1</add>
182 <export>true</export>
183 </field>
184 <foreignKey>
185 <name>registered_by_id</name>
186 <table>civicrm_participant</table>
187 <key>id</key>
188 <add>2.1</add>
189 <onDelete>SET NULL</onDelete>
190 </foreignKey>
191 <field>
192 <name>discount_id</name>
193 <uniqueName>participant_discount_id</uniqueName>
194 <type>int unsigned</type>
195 <title>Discount ID</title>
196 <default>NULL</default>
197 <comment>FK to Discount ID</comment>
198 <add>2.1</add>
199 </field>
200 <foreignKey>
201 <name>discount_id</name>
202 <table>civicrm_discount</table>
203 <key>id</key>
204 <add>2.1</add>
205 <onDelete>SET NULL</onDelete>
206 </foreignKey>
207 <field>
208 <name>fee_currency</name>
209 <uniqueName>participant_fee_currency</uniqueName>
210 <title>Fee Currency</title>
211 <type>varchar</type>
212 <length>3</length>
213 <default>NULL</default>
214 <import>true</import>
215 <headerPattern>/(fee)?.?cur(rency)?/i</headerPattern>
216 <dataPattern>/^[A-Z]{3}$/i</dataPattern>
217 <comment>3 character string, value derived from config setting.</comment>
218 <add>3.0</add>
219 </field>
220 <field>
221 <name>campaign_id</name>
222 <uniqueName>participant_campaign_id</uniqueName>
223 <type>int unsigned</type>
224 <title>Campaign ID</title>
225 <import>true</import>
226 <comment>The campaign for which this participant has been registered.</comment>
227 <add>3.4</add>
228 </field>
229 <foreignKey>
230 <name>campaign_id</name>
231 <table>civicrm_campaign</table>
232 <key>id</key>
233 <onDelete>SET NULL</onDelete>
234 </foreignKey>
235 <field>
236 <name>discount_amount</name>
237 <type>int unsigned</type>
238 <title>Discount Amount</title>
239 <comment>Discount Amount</comment>
240 <add>4.1</add>
241 </field>
242 <field>
243 <name>cart_id</name>
244 <type>int unsigned</type>
245 <title>Event Cart ID</title>
246 <comment>FK to civicrm_event_carts</comment>
247 <add>4.1</add>
248 </field>
249 <foreignKey>
250 <name>cart_id</name>
251 <table>civicrm_event_carts</table>
252 <key>id</key>
253 <onDelete>SET NULL</onDelete>
254 </foreignKey>
255 <field>
256 <name>must_wait</name>
257 <type>int</type>
258 <title>Must Wait on List</title>
259 <comment>On Waiting List</comment>
260 <add>4.1</add>
261 </field>
262</table>