Commit | Line | Data |
---|---|---|
7d9f50a2 | 1 | <?php |
7d9f50a2 CW |
2 | /* |
3 | +--------------------------------------------------------------------+ | |
a30c801b | 4 | | Copyright CiviCRM LLC. All rights reserved. | |
7d9f50a2 | 5 | | | |
a30c801b TO |
6 | | This work is published under the GNU AGPLv3 license with some | |
7 | | permitted exceptions and without any warranty. For full license | | |
8 | | and copyright information, see https://civicrm.org/licensing | | |
7d9f50a2 | 9 | +--------------------------------------------------------------------+ |
d25dd0ee | 10 | */ |
7d9f50a2 CW |
11 | |
12 | /** | |
244bbdd8 CW |
13 | * This api exposes CiviCRM premiums. |
14 | * | |
15 | * Premiums are used as incentive gifts on contribution pages. | |
16 | * Premiums contain "Products" which has a separate api. | |
17 | * Use chaining to create a premium and related products in one api call. | |
7d9f50a2 CW |
18 | * |
19 | * @package CiviCRM_APIv3 | |
7d9f50a2 CW |
20 | */ |
21 | ||
22 | /** | |
9d32e6f7 | 23 | * Save a premium. |
7d9f50a2 | 24 | * |
c490a46a | 25 | * @param array $params |
f84e38ab EM |
26 | * |
27 | * @throws API_Exception | |
a6c01b45 | 28 | * @return array |
7d9f50a2 CW |
29 | */ |
30 | function civicrm_api3_premium_create($params) { | |
a25b46e9 | 31 | return _civicrm_api3_basic_create(_civicrm_api3_get_BAO(__FUNCTION__), $params, 'Premium'); |
7d9f50a2 CW |
32 | } |
33 | ||
34 | /** | |
9d32e6f7 | 35 | * Get a premium. |
7d9f50a2 | 36 | * |
c490a46a | 37 | * @param array $params |
f84e38ab | 38 | * |
a6c01b45 | 39 | * @return array |
16b10e64 | 40 | * Array of retrieved premium property values. |
7d9f50a2 CW |
41 | */ |
42 | function civicrm_api3_premium_get($params) { | |
43 | return _civicrm_api3_basic_get(_civicrm_api3_get_BAO(__FUNCTION__), $params); | |
44 | } | |
45 | ||
46 | /** | |
9d32e6f7 | 47 | * Delete a premium. |
7d9f50a2 | 48 | * |
c490a46a | 49 | * @param array $params |
f84e38ab EM |
50 | * |
51 | * @throws API_Exception | |
a6c01b45 | 52 | * @return array |
16b10e64 | 53 | * Array of deleted values. |
7d9f50a2 CW |
54 | */ |
55 | function civicrm_api3_premium_delete($params) { | |
56 | return _civicrm_api3_basic_delete(_civicrm_api3_get_BAO(__FUNCTION__), $params); | |
57 | } | |
58 | ||
59 | /** | |
9d32e6f7 EM |
60 | * Return field specification specific to get requests. |
61 | * | |
d0997921 | 62 | * @param array $params |
7d9f50a2 CW |
63 | */ |
64 | function _civicrm_api3_premium_get_spec(&$params) { | |
cf8f0fff | 65 | $params['premiums_active']['api.aliases'] = ['is_active']; |
7d9f50a2 CW |
66 | } |
67 | ||
68 | /** | |
9d32e6f7 EM |
69 | * Return field specification specific to create requests. |
70 | * | |
d0997921 | 71 | * @param array $params |
7d9f50a2 CW |
72 | */ |
73 | function _civicrm_api3_premium_create_spec(&$params) { | |
cf8f0fff | 74 | $params['premiums_active']['api.aliases'] = ['is_active']; |
7d9f50a2 | 75 | } |