Commit | Line | Data |
---|---|---|
3c7d2158 | 1 | <?xml version="1.0" encoding="iso-8859-1" ?> |
2 | ||
3 | <table> | |
4 | <base>CRM/Contribute</base> | |
6a488035 TO |
5 | <class>Product</class> |
6 | <comment>able - stores "product info" for premiums and can be used for non-incentive products </comment> | |
3c7d2158 | 7 | <name>civicrm_product</name> |
8 | <add>1.4</add> | |
6a488035 | 9 | <log>true</log> |
3c7d2158 | 10 | <field> |
11 | <name>id</name> | |
12 | <type>int unsigned</type> | |
13 | <required>true</required> | |
14 | <add>1.4</add> | |
15 | </field> | |
16 | <primaryKey> | |
17 | <name>id</name> | |
18 | <autoincrement>true</autoincrement> | |
6a488035 TO |
19 | </primaryKey> |
20 | <field> | |
21 | <name>name</name> | |
22 | <uniqueName>product_name</uniqueName> | |
23 | <title>Product Name</title> | |
24 | <type>varchar</type> | |
25 | <length>255</length> | |
26 | <required>true</required> | |
27 | <export>true</export> | |
28 | <localizable>true</localizable> | |
29 | <comment>Required product/premium name</comment> | |
30 | <add>1.4</add> | |
31 | </field> | |
32 | <field> | |
33 | <name>description</name> | |
34 | <title>Description</title> | |
35 | <type>text</type> | |
36 | <localizable>true</localizable> | |
37 | <comment>Optional description of the product/premium.</comment> | |
38 | <add>1.4</add> | |
39 | </field> | |
3c7d2158 | 40 | <field> |
41 | <name>sku</name> | |
6a488035 TO |
42 | <title>SKU</title> |
43 | <type>varchar</type> | |
44 | <length>50</length> | |
3c7d2158 | 45 | <export>true</export> |
6a488035 | 46 | <comment>Optional product sku or code.</comment> |
3c7d2158 | 47 | <add>1.4</add> |
48 | </field> | |
49 | <field> | |
50 | <name>options</name> | |
6a488035 TO |
51 | <title>Options</title> |
52 | <type>text</type> | |
53 | <localizable>true</localizable> | |
3c7d2158 | 54 | <comment>Store comma-delimited list of color, size, etc. options for the product.</comment> |
55 | <add>1.4</add> | |
56 | </field> | |
57 | <field> | |
6a488035 TO |
58 | <name>image</name> |
59 | <title>Image</title> | |
3c7d2158 | 60 | <type>varchar</type> |
6a488035 | 61 | <length>255</length> |
3c7d2158 | 62 | <comment>Full or relative URL to uploaded image - fullsize.</comment> |
63 | <add>1.4</add> | |
64 | </field> | |
65 | <field> | |
6a488035 TO |
66 | <name>thumbnail</name> |
67 | <title>Thumbnail</title> | |
3c7d2158 | 68 | <type>varchar</type> |
6a488035 | 69 | <length>255</length> |
3c7d2158 | 70 | <comment>Full or relative URL to image thumbnail.</comment> |
71 | <add>1.4</add> | |
72 | </field> | |
73 | <field> | |
74 | <name>price</name> | |
6a488035 | 75 | <title>Price</title> |
3c7d2158 | 76 | <type>decimal</type> |
77 | <comment>Sell price or market value for premiums. For tax-deductible contributions, this will be stored as non_deductible_amount in the contribution record.</comment> | |
78 | <add>1.4</add> | |
6a488035 TO |
79 | </field> |
80 | <field> | |
81 | <name>currency</name> | |
82 | <type>varchar</type> | |
83 | <length>3</length> | |
84 | <default>NULL</default> | |
85 | <comment>3 character string, value from config setting or input via user.</comment> | |
86 | <add>3.2</add> | |
bd44e0df AS |
87 | <pseudoconstant> |
88 | <table>civicrm_currency</table> | |
89 | <keyColumn>name</keyColumn> | |
a38a89fc CW |
90 | <labelColumn>full_name</labelColumn> |
91 | <nameColumn>numeric_code</nameColumn> | |
bd44e0df | 92 | </pseudoconstant> |
614d72ec | 93 | <html> |
e0991796 | 94 | <type>Select</type> |
614d72ec | 95 | </html> |
6a488035 | 96 | </field> |
3c7d2158 | 97 | <field> |
98 | <name>financial_type_id</name> | |
6a488035 | 99 | <title>Financial Type</title> |
3c7d2158 | 100 | <type>int unsigned</type> |
6a488035 TO |
101 | <default>NULL</default> |
102 | <comment>FK to Financial Type.</comment> | |
3c7d2158 | 103 | <add>4.3</add> |
104 | </field> | |
105 | <foreignKey> | |
106 | <name>financial_type_id</name> | |
107 | <table>civicrm_financial_type</table> | |
108 | <key>id</key> | |
6a488035 TO |
109 | <onDelete>SET NULL</onDelete> |
110 | <add>4.3</add> | |
3c7d2158 | 111 | </foreignKey> |
112 | ||
113 | <field> | |
6a488035 TO |
114 | <name>min_contribution</name> |
115 | <title>Minimum Contribution</title> | |
116 | <type>decimal</type> | |
3c7d2158 | 117 | <comment>Minimum contribution required to be eligible to select this premium.</comment> |
118 | <add>1.4</add> | |
6a488035 | 119 | </field> |
3c7d2158 | 120 | <field> |
6a488035 TO |
121 | <name>cost</name> |
122 | <title>Cost</title> | |
3c7d2158 | 123 | <type>decimal</type> |
124 | <comment>Actual cost of this product. Useful to determine net return from sale or using this as an incentive.</comment> | |
125 | <add>1.4</add> | |
6a488035 | 126 | </field> |
3c7d2158 | 127 | <field> |
6a488035 TO |
128 | <name>is_active</name> |
129 | <title>Is Active</title> | |
3c7d2158 | 130 | <type>boolean</type> |
131 | <required>true</required> | |
132 | <comment>Disabling premium removes it from the premiums_premium join table below.</comment> | |
133 | <add>1.4</add> | |
6a488035 | 134 | </field> |
3c7d2158 | 135 | <field> |
6a488035 TO |
136 | <name>period_type</name> |
137 | <title>Period Type</title> | |
dc73c80d | 138 | <type>varchar</type> |
139 | <length>8</length> | |
6a488035 TO |
140 | <default>'rolling'</default> |
141 | <comment>Rolling means we set start/end based on current day, fixed means we set start/end for current year or month | |
3c7d2158 | 142 | (e.g. 1 year + fixed -> we would set start/end for 1/1/06 thru 12/31/06 for any premium chosen in 2006) </comment> |
f80ce889 | 143 | <pseudoconstant> |
93bfa565 | 144 | <callback>CRM_Core_SelectValues::periodType</callback> |
f80ce889 | 145 | </pseudoconstant> |
3c7d2158 | 146 | <add>1.4</add> |
614d72ec | 147 | <html> |
148 | <type>Select</type> | |
149 | </html> | |
6a488035 | 150 | </field> |
3c7d2158 | 151 | <field> |
6a488035 TO |
152 | <name>fixed_period_start_day</name> |
153 | <title>Fixed Period Start Day</title> | |
154 | <type>int</type> | |
155 | <default>0101</default> | |
3c7d2158 | 156 | <comment>Month and day (MMDD) that fixed period type subscription or membership starts.</comment> |
157 | <add>1.4</add> | |
6a488035 | 158 | </field> |
3c7d2158 | 159 | <field> |
6a488035 TO |
160 | <name>duration_unit</name> |
161 | <title>Duration Unit</title> | |
dc73c80d | 162 | <type>varchar</type> |
163 | <length>8</length> | |
6a488035 | 164 | <default>'year'</default> |
f80ce889 | 165 | <pseudoconstant> |
93bfa565 | 166 | <callback>CRM_Core_SelectValues::getPremiumUnits</callback> |
f80ce889 | 167 | </pseudoconstant> |
3c7d2158 | 168 | <add>1.4</add> |
614d72ec | 169 | <html> |
170 | <type>Select</type> | |
171 | </html> | |
6a488035 | 172 | </field> |
3c7d2158 | 173 | <field> |
6a488035 TO |
174 | <name>duration_interval</name> |
175 | <title>Duration Interval</title> | |
176 | <type>int</type> | |
3c7d2158 | 177 | <comment>Number of units for total duration of subscription, service, membership (e.g. 12 Months).</comment> |
178 | <add>1.4</add> | |
6a488035 | 179 | </field> |
3c7d2158 | 180 | <field> |
6a488035 TO |
181 | <name>frequency_unit</name> |
182 | <title>Frequency Unit</title> | |
dc73c80d | 183 | <type>varchar</type> |
184 | <length>8</length> | |
6a488035 TO |
185 | <default>'month'</default> |
186 | <comment>Frequency unit and interval allow option to store actual delivery frequency for a subscription or service.</comment> | |
f80ce889 | 187 | <pseudoconstant> |
93bfa565 | 188 | <callback>CRM_Core_SelectValues::getPremiumUnits</callback> |
f80ce889 | 189 | </pseudoconstant> |
3c7d2158 | 190 | <add>1.4</add> |
614d72ec | 191 | <html> |
192 | <type>Select</type> | |
193 | </html> | |
6a488035 | 194 | </field> |
3c7d2158 | 195 | <field> |
6a488035 TO |
196 | <name>frequency_interval</name> |
197 | <title>Frequency Interval</title> | |
198 | <type>int</type> | |
3c7d2158 | 199 | <comment>Number of units for delivery frequency of subscription, service, membership (e.g. every 3 Months).</comment> |
200 | <add>1.4</add> | |
6a488035 TO |
201 | </field> |
202 | </table> |