Merge pull request #9173 from jmcclelland/CRM-19456
[civicrm-core.git] / xml / schema / Member / MembershipType.xml
CommitLineData
6a488035
TO
1<?xml version="1.0" encoding="iso-8859-1" ?>
2
3<table>
4 <base>CRM/Member</base>
5 <class>MembershipType</class>
6 <name>civicrm_membership_type</name>
7 <comment>Sites can configure multiple types of memberships. They encode the owner organization, fee, and the rules needed to set start and end (expire) dates when a member signs up for that type.</comment>
8 <add>1.5</add>
9 <log>true</log>
10 <field>
11 <name>id</name>
0d94665e 12 <title>Membership Type ID</title>
6a488035
TO
13 <type>int unsigned</type>
14 <required>true</required>
15 <comment>Membership Id</comment>
16 <add>1.5</add>
17 </field>
18 <primaryKey>
19 <name>id</name>
20 <autoincrement>true</autoincrement>
21 </primaryKey>
22 <field>
23 <name>domain_id</name>
0d94665e 24 <title>Membership Type Domain</title>
6a488035
TO
25 <type>int unsigned</type>
26 <required>true</required>
c2b4755a
EM
27 <pseudoconstant>
28 <table>civicrm_domain</table>
29 <keyColumn>id</keyColumn>
30 <labelColumn>name</labelColumn>
31 </pseudoconstant>
6a488035
TO
32 <comment>Which Domain is this match entry for</comment>
33 <add>3.0</add>
34 </field>
35 <foreignKey>
36 <name>domain_id</name>
37 <table>civicrm_domain</table>
38 <key>id</key>
39 <add>3.0</add>
3c7d2158 40 </foreignKey>
6a488035
TO
41 <field>
42 <name>name</name>
3c7d2158 43 <uniqueName>membership_type</uniqueName>
6a488035
TO
44 <title>Membership Type</title>
45 <type>varchar</type>
46 <import>true</import>
47 <length>128</length>
48 <localizable>true</localizable>
49 <comment>Name of Membership Type</comment>
50 <add>1.5</add>
51 </field>
52 <field>
53 <name>description</name>
0d94665e 54 <title>Membership Type Description</title>
6a488035 55 <type>varchar</type>
7deea513 56 <html>
57 <type>TextArea</type>
817807ab 58 <rows>6</rows>
59 <cols>50</cols>
7deea513 60 </html>
6a488035
TO
61 <length>255</length>
62 <localizable>true</localizable>
63 <comment>Description of Membership Type</comment>
64 <add>1.5</add>
65 </field>
66 <field>
67 <name>member_of_contact_id</name>
0d94665e 68 <title>Membership Type Organization</title>
6a488035
TO
69 <type>int unsigned</type>
70 <required>true</required>
71 <comment>Owner organization for this membership type. FK to Contact ID</comment>
72 <add>1.5</add>
73 </field>
3c7d2158 74 <foreignKey>
75 <name>member_of_contact_id</name>
76 <table>civicrm_contact</table>
6a488035
TO
77 <key>id</key>
78 <add>1.5</add>
79 <onDelete>RESTRICT</onDelete>
80 </foreignKey>
81 <field>
82 <name>contribution_type_id</name>
83 <type>int unsigned</type>
84 <required>true</required>
85 <comment>If membership is paid by a contribution - what contribution type should be used. FK to Contribution Type ID</comment>
86 <add>1.5</add>
87 <drop>4.3</drop>
88 </field>
3c7d2158 89 <foreignKey>
90 <name>contribution_type_id</name>
91 <table>civicrm_contribution_type</table>
92 <key>id</key>
6a488035
TO
93 <add>1.5</add>
94 <drop>4.3</drop>
95 </foreignKey>
96 <field>
97 <name>financial_type_id</name>
0d94665e 98 <title>Membership Financial Type</title>
6a488035
TO
99 <type>int unsigned</type>
100 <required>true</required>
6cc0b7bd
EM
101 <pseudoconstant>
102 <table>civicrm_financial_type</table>
103 <keyColumn>id</keyColumn>
104 <labelColumn>name</labelColumn>
105 </pseudoconstant>
6a488035
TO
106 <comment>If membership is paid by a contribution - what financial type should be used. FK to civicrm_financial_type.id</comment>
107 <add>4.3</add>
108 </field>
3c7d2158 109 <foreignKey>
110 <name>financial_type_id</name>
111 <table>civicrm_financial_type</table>
112 <key>id</key>
6a488035
TO
113 <add>4.3</add>
114 </foreignKey>
3c7d2158 115 <field>
116 <name>minimum_fee</name>
0d94665e 117 <title>membership Type Minimum Fee</title>
3c7d2158 118 <type>decimal</type>
119 <comment>Minimum fee for this membership (0 for free/complimentary memberships).</comment>
6a488035 120 <default>0</default>
3c7d2158 121 <add>1.5</add>
122 </field>
123 <field>
124 <name>duration_unit</name>
0d94665e 125 <title>Membership Type Duration Unit</title>
be622aca 126 <type>varchar</type>
127 <length>8</length>
3c7d2158 128 <comment>Unit in which membership period is expressed.</comment>
71a707c3 129 <pseudoconstant>
93bfa565 130 <callback>CRM_Core_SelectValues::membershipTypeUnitList</callback>
71a707c3 131 </pseudoconstant>
3c7d2158 132 <add>1.5</add>
614d72ec 133 <html>
134 <type>Select</type>
135 </html>
3c7d2158 136 </field>
137 <field>
6a488035 138 <name>duration_interval</name>
0d94665e 139 <title>Membership Type Duration Interval</title>
6a488035 140 <type>int</type>
3c7d2158 141 <comment>Number of duration units in membership period (e.g. 1 year, 12 months).</comment>
142 <add>1.5</add>
143 </field>
144 <field>
145 <name>period_type</name>
0d94665e 146 <title>Membership Type Plan</title>
be622aca 147 <type>varchar</type>
148 <length>8</length>
3c7d2158 149 <comment>Rolling membership period starts on signup date. Fixed membership periods start on fixed_period_start_day.</comment>
71a707c3 150 <pseudoconstant>
93bfa565 151 <callback>CRM_Core_SelectValues::periodType</callback>
71a707c3 152 </pseudoconstant>
3c7d2158 153 <add>1.5</add>
154 </field>
155 <field>
156 <name>fixed_period_start_day</name>
0d94665e 157 <title>Fixed Period Start Day</title>
6a488035 158 <type>int</type>
3c7d2158 159 <comment>For fixed period memberships, month and day (mmdd) on which subscription/membership will start. Period start is back-dated unless after rollover day.</comment>
160 <add>1.5</add>
161 </field>
162 <field>
163 <name>fixed_period_rollover_day</name>
0d94665e 164 <title>Fixed Period Rollover Day</title>
3c7d2158 165 <type>int</type>
166 <comment>For fixed period memberships, signups after this day (mmdd) rollover to next period.</comment>
167 <add>1.5</add>
168 </field>
6a488035
TO
169 <field>
170 <name>relationship_type_id</name>
0d94665e 171 <title>Membership Type Relationship</title>
6a488035
TO
172 <type>varchar</type>
173 <length>64</length>
174 <comment>FK to Relationship Type ID</comment>
175 <add>1.5</add>
176 </field>
3c7d2158 177 <foreignKey>
178 <name>relationship_type_id</name>
179 <table>civicrm_relationship_type</table>
180 <key>id</key>
6a488035
TO
181 <add>1.5</add>
182 <drop>3.3</drop>
183 </foreignKey>
184 <index>
185 <name>index_relationship_type_id</name>
186 <fieldName>relationship_type_id</fieldName>
187 <add>3.3</add>
188 </index>
3c7d2158 189 <field>
190 <name>relationship_direction</name>
191 <type>varchar</type>
192 <length>128</length>
193 <add>1.7</add>
6a488035
TO
194 </field>
195 <field>
196 <name>max_related</name>
0d94665e 197 <title>Max Related Members for Type</title>
6a488035
TO
198 <type>int</type>
199 <comment>Maximum number of related memberships.</comment>
200 <add>4.3</add>
201 </field>
202 <field>
3c7d2158 203 <name>visibility</name>
6a488035
TO
204 <title>Visible</title>
205 <type>varchar</type>
206 <length>64</length>
4080e473
AS
207 <add>1.5</add>
208 <pseudoconstant>
eacf220c 209 <callback>CRM_Core_SelectValues::memberVisibility</callback>
4080e473 210 </pseudoconstant>
614d72ec 211 <html>
e0991796 212 <type>Select</type>
614d72ec 213 </html>
6a488035 214 </field>
3c7d2158 215 <field>
216 <name>weight</name>
7ecddde4 217 <title>Order</title>
6a488035 218 <type>int</type>
3c7d2158 219 <add>1.5</add>
6a488035
TO
220 </field>
221 <field>
222 <name>receipt_text_signup</name>
0d94665e 223 <title>Membership Type Receipt Text</title>
6a488035 224 <type>varchar</type>
7deea513 225 <html>
226 <type>TextArea</type>
817807ab 227 <rows>6</rows>
228 <cols>50</cols>
7deea513 229 </html>
6a488035
TO
230 <length>255</length>
231 <comment>Receipt Text for membership signup</comment>
232 <add>2.0</add>
233 </field>
234 <field>
235 <name>receipt_text_renewal</name>
0d94665e 236 <title>Membership Type Renewal Text</title>
6a488035 237 <type>varchar</type>
7deea513 238 <html>
239 <type>TextArea</type>
817807ab 240 <rows>6</rows>
241 <cols>50</cols>
7deea513 242 </html>
6a488035
TO
243 <length>255</length>
244 <comment>Receipt Text for membership renewal</comment>
245 <add>2.0</add>
246 </field>
3c7d2158 247 <field>
248 <name>auto_renew</name>
6a488035
TO
249 <type>boolean</type>
250 <default>0</default>
dbd82592
CW
251 <pseudoconstant>
252 <callback>CRM_Core_SelectValues::memberAutoRenew</callback>
253 </pseudoconstant>
3c7d2158 254 <comment>0 = No auto-renew option; 1 = Give option, but not required; 2 = Auto-renew required;</comment>
255 <add>3.3</add>
256 </field>
257 <field>
258 <name>is_active</name>
6a488035
TO
259 <title>Is Active</title>
260 <type>boolean</type>
261 <default>1</default>
3c7d2158 262 <comment>Is this membership_type enabled</comment>
263 <add>1.5</add>
264 </field>
6a488035 265</table>