Commit | Line | Data |
---|---|---|
6a488035 TO |
1 | <?xml version="1.0" encoding="iso-8859-1" ?> |
2 | ||
3 | <table> | |
4 | <base>CRM/Member</base> | |
5 | <class>Membership</class> | |
6 | <name>civicrm_membership</name> | |
7 | <comment>Contact Membership records.</comment> | |
8 | <add>1.5</add> | |
9 | <log>true</log> | |
449c4e6b | 10 | <icon>fa-id-badge</icon> |
6a488035 | 11 | <field> |
5435b737 EM |
12 | <name>id</name> |
13 | <uniqueName>membership_id</uniqueName> | |
14 | <type>int unsigned</type> | |
15 | <required>true</required> | |
16 | <import>true</import> | |
17 | <title>Membership ID</title> | |
18 | <headerPattern>/^(m(embership\s)?id)$/i</headerPattern> | |
19 | <comment>Membership Id</comment> | |
20 | <add>1.5</add> | |
6a488035 TO |
21 | </field> |
22 | <primaryKey> | |
5435b737 EM |
23 | <name>id</name> |
24 | <autoincrement>true</autoincrement> | |
6a488035 TO |
25 | </primaryKey> |
26 | ||
27 | <field> | |
5435b737 EM |
28 | <name>contact_id</name> |
29 | <uniqueName>membership_contact_id</uniqueName> | |
30 | <type>int unsigned</type> | |
31 | <required>true</required> | |
32 | <title>Contact ID</title> | |
33 | <headerPattern>/contact(.?id)?/i</headerPattern> | |
34 | <dataPattern>/^\d+$/</dataPattern> | |
35 | <import>true</import> | |
36 | <comment>FK to Contact ID</comment> | |
37 | <add>1.5</add> | |
38 | <html> | |
916b6181 | 39 | <type>EntityRef</type> |
5435b737 | 40 | </html> |
6a488035 | 41 | </field> |
3c7d2158 | 42 | <foreignKey> |
5435b737 EM |
43 | <name>contact_id</name> |
44 | <table>civicrm_contact</table> | |
45 | <key>id</key> | |
46 | <add>1.5</add> | |
47 | <onDelete>CASCADE</onDelete> | |
6a488035 TO |
48 | </foreignKey> |
49 | <field> | |
5435b737 EM |
50 | <name>membership_type_id</name> |
51 | <type>int unsigned</type> | |
52 | <title>Membership Type Id</title> | |
53 | <import>true</import> | |
54 | <headerPattern>/^(m(embership\s)?type)$/i</headerPattern> | |
55 | <export>false</export> | |
56 | <required>true</required> | |
57 | <comment>FK to Membership Type</comment> | |
58 | <pseudoconstant> | |
59 | <table>civicrm_membership_type</table> | |
60 | <keyColumn>id</keyColumn> | |
61 | <labelColumn>name</labelColumn> | |
62 | </pseudoconstant> | |
63 | <html> | |
64 | <type>Select</type> | |
03ee227b | 65 | <label>Membership Type</label> |
5435b737 EM |
66 | </html> |
67 | <add>1.5</add> | |
6a488035 | 68 | </field> |
3c7d2158 | 69 | <foreignKey> |
5435b737 EM |
70 | <name>membership_type_id</name> |
71 | <table>civicrm_membership_type</table> | |
72 | <key>id</key> | |
73 | <add>1.5</add> | |
74 | <onDelete>CASCADE</onDelete> | |
6a488035 | 75 | </foreignKey> |
3c7d2158 | 76 | <field> |
5435b737 EM |
77 | <name>join_date</name> |
78 | <title>Member Since</title> | |
79 | <type>date</type> | |
80 | <import>true</import> | |
81 | <headerPattern>/^join|(j(oin\s)?date)$/i</headerPattern> | |
82 | <dataPattern>/\d{4}-?\d{2}-?\d{2}/</dataPattern> | |
83 | <comment>Beginning of initial membership period (member since...).</comment> | |
84 | <add>1.5</add> | |
85 | <html> | |
86 | <type>Select Date</type> | |
24317d89 | 87 | <formatType>activityDate</formatType> |
5435b737 | 88 | </html> |
09ba1975 | 89 | <uniqueName>membership_join_date</uniqueName> |
3c7d2158 | 90 | </field> |
91 | <field> | |
5435b737 EM |
92 | <name>start_date</name> |
93 | <uniqueName>membership_start_date</uniqueName> | |
94 | <title>Membership Start Date</title> | |
95 | <type>date</type> | |
96 | <import>true</import> | |
97 | <headerPattern>/(member(ship)?.)?start(s)?(.date$)?/i</headerPattern> | |
98 | <dataPattern>/\d{4}-?\d{2}-?\d{2}/</dataPattern> | |
99 | <comment>Beginning of current uninterrupted membership period.</comment> | |
100 | <add>1.5</add> | |
101 | <html> | |
102 | <type>Select Date</type> | |
24317d89 | 103 | <formatType>activityDate</formatType> |
5435b737 | 104 | </html> |
6a488035 | 105 | </field> |
3c7d2158 | 106 | <field> |
5435b737 EM |
107 | <name>end_date</name> |
108 | <uniqueName>membership_end_date</uniqueName> | |
109 | <title>Membership Expiration Date</title> | |
110 | <type>date</type> | |
111 | <import>true</import> | |
112 | <headerPattern>/(member(ship)?.)?end(s)?(.date$)?/i</headerPattern> | |
113 | <dataPattern>/\d{4}-?\d{2}-?\d{2}/</dataPattern> | |
114 | <comment>Current membership period expire date.</comment> | |
115 | <add>1.5</add> | |
116 | <html> | |
117 | <type>Select Date</type> | |
24317d89 | 118 | <formatType>activityDate</formatType> |
5435b737 | 119 | </html> |
3c7d2158 | 120 | </field> |
121 | <field> | |
5435b737 EM |
122 | <name>source</name> |
123 | <uniqueName>membership_source</uniqueName> | |
124 | <title>Source</title> | |
125 | <import>true</import> | |
126 | <headerPattern>/^(member(ship?))?source$/i</headerPattern> | |
127 | <type>varchar</type> | |
128 | <length>128</length> | |
129 | <add>1.5</add> | |
130 | <html> | |
131 | <type>Text</type> | |
132 | </html> | |
3c7d2158 | 133 | </field> |
6a488035 | 134 | <field> |
5435b737 EM |
135 | <name>status_id</name> |
136 | <title>Membership Status Id</title> | |
137 | <import>true</import> | |
138 | <headerPattern>/(member(ship|).)?(status)$/i</headerPattern> | |
139 | <type>int unsigned</type> | |
140 | <export>false</export> | |
141 | <required>true</required> | |
142 | <comment>FK to Membership Status</comment> | |
143 | <pseudoconstant> | |
144 | <table>civicrm_membership_status</table> | |
145 | <keyColumn>id</keyColumn> | |
146 | <labelColumn>label</labelColumn> | |
147 | </pseudoconstant> | |
148 | <html> | |
149 | <type>Select</type> | |
150 | </html> | |
151 | <add>1.5</add> | |
6a488035 | 152 | </field> |
3c7d2158 | 153 | <foreignKey> |
5435b737 EM |
154 | <name>status_id</name> |
155 | <table>civicrm_membership_status</table> | |
156 | <key>id</key> | |
157 | <add>1.5</add> | |
158 | <onDelete>CASCADE</onDelete> | |
6a488035 | 159 | </foreignKey> |
3c7d2158 | 160 | <field> |
5435b737 | 161 | <name>is_override</name> |
8f67d99a | 162 | <uniqueName>member_is_override</uniqueName> |
5435b737 EM |
163 | <title>Status Override</title> |
164 | <import>true</import> | |
8f67d99a | 165 | <export>true</export> |
5435b737 EM |
166 | <headerPattern>/override$/i</headerPattern> |
167 | <type>boolean</type> | |
168 | <comment>Admin users may set a manual status which overrides the calculated status. When this flag is true, automated status update scripts should NOT modify status for the record.</comment> | |
169 | <html> | |
170 | <type>CheckBox</type> | |
171 | </html> | |
172 | <add>1.5</add> | |
3c7d2158 | 173 | </field> |
e136f704 O |
174 | <field> |
175 | <name>status_override_end_date</name> | |
176 | <title>Status Override End Date</title> | |
177 | <type>date</type> | |
178 | <default>NULL</default> | |
179 | <import>true</import> | |
180 | <comment>Then end date of membership status override if 'Override until selected date' override type is selected.</comment> | |
181 | <add>4.7</add> | |
182 | <html> | |
183 | <type>Select Date</type> | |
184 | </html> | |
185 | </field> | |
6a488035 | 186 | <field> |
5435b737 EM |
187 | <name>owner_membership_id</name> |
188 | <type>int unsigned</type> | |
011aeb62 | 189 | <title>Primary Member ID</title> |
5435b737 EM |
190 | <comment>Optional FK to Parent Membership.</comment> |
191 | <export>true</export> | |
192 | <add>1.7</add> | |
6a488035 TO |
193 | </field> |
194 | <foreignKey> | |
5435b737 EM |
195 | <name>owner_membership_id</name> |
196 | <table>civicrm_membership</table> | |
197 | <key>id</key> | |
198 | <add>1.7</add> | |
199 | <onDelete>SET NULL</onDelete> | |
6a488035 TO |
200 | </foreignKey> |
201 | <index> | |
202 | <name>index_owner_membership_id</name> | |
203 | <fieldName>owner_membership_id</fieldName> | |
204 | <add>1.7</add> | |
205 | </index> | |
206 | <field> | |
5435b737 EM |
207 | <name>max_related</name> |
208 | <type>int</type> | |
209 | <comment>Maximum number of related memberships (membership_type override).</comment> | |
210 | <add>4.3</add> | |
8f67d99a | 211 | <export>true</export> |
5435b737 EM |
212 | <html> |
213 | <type>Text</type> | |
214 | </html> | |
6a488035 TO |
215 | </field> |
216 | <field> | |
5435b737 EM |
217 | <name>is_test</name> |
218 | <title>Test</title> | |
219 | <uniqueName>member_is_test</uniqueName> | |
220 | <type>boolean</type> | |
221 | <default>0</default> | |
222 | <import>true</import> | |
223 | <headerPattern>/(is.)?test(.member(ship)?)?/i</headerPattern> | |
224 | <html> | |
225 | <type>CheckBox</type> | |
226 | </html> | |
6a488035 | 227 | </field> |
3c7d2158 | 228 | <field> |
5435b737 EM |
229 | <name>is_pay_later</name> |
230 | <uniqueName>member_is_pay_later</uniqueName> | |
231 | <title>Is Pay Later</title> | |
232 | <type>boolean</type> | |
233 | <default>0</default> | |
234 | <import>true</import> | |
235 | <headerPattern>/(is.)?(pay(.)?later)$/i</headerPattern> | |
236 | <add>2.1</add> | |
237 | <html> | |
238 | <type>CheckBox</type> | |
239 | </html> | |
6a488035 | 240 | </field> |
3c7d2158 | 241 | <field> |
242 | <name>contribution_recur_id</name> | |
8f67d99a | 243 | <uniqueName>membership_recur_id</uniqueName> |
c58f0e40 | 244 | <title>Membership Recurring Contribution</title> |
3c7d2158 | 245 | <type>int unsigned</type> |
8f67d99a | 246 | <export>true</export> |
3c7d2158 | 247 | <comment>Conditional foreign key to civicrm_contribution_recur id. Each membership in connection with a recurring contribution carries a foreign key to the recurring contribution record. This assumes we can track these processor initiated events.</comment> |
248 | <add>3.3</add> | |
249 | </field> | |
250 | <foreignKey> | |
251 | <name>contribution_recur_id</name> | |
252 | <table>civicrm_contribution_recur</table> | |
253 | <key>id</key> | |
254 | <add>3.3</add> | |
6a488035 TO |
255 | <onDelete>SET NULL</onDelete> |
256 | </foreignKey> | |
3c7d2158 | 257 | <field> |
258 | <name>campaign_id</name> | |
6a488035 TO |
259 | <uniqueName>member_campaign_id</uniqueName> |
260 | <type>int unsigned</type> | |
e1ab2e91 | 261 | <title>Campaign</title> |
3c7d2158 | 262 | <import>true</import> |
263 | <comment>The campaign for which this membership is attached.</comment> | |
3e3eacd0 CW |
264 | <pseudoconstant> |
265 | <table>civicrm_campaign</table> | |
266 | <keyColumn>id</keyColumn> | |
267 | <labelColumn>title</labelColumn> | |
3e3eacd0 | 268 | </pseudoconstant> |
3c7d2158 | 269 | <add>3.4</add> |
614d72ec | 270 | <html> |
271 | <type>Select</type> | |
272 | </html> | |
3c7d2158 | 273 | </field> |
274 | <foreignKey> | |
275 | <name>campaign_id</name> | |
276 | <table>civicrm_campaign</table> | |
277 | <key>id</key> | |
6a488035 TO |
278 | <onDelete>SET NULL</onDelete> |
279 | </foreignKey> | |
280 | </table> |