dev/core#1833 Change default value of participant_listing_id to NULL from 0
[civicrm-core.git] / api / v3 / MailingEventQueue.php
1 <?php
2 /*
3 +--------------------------------------------------------------------+
4 | Copyright CiviCRM LLC. All rights reserved. |
5 | |
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 |
9 +--------------------------------------------------------------------+
10 */
11 /**
12 *
13 * APIv3 functions for registering/processing mailing group events.
14 *
15 * @package CiviCRM_APIv3
16 */
17
18 /**
19 * Handle a queue event.
20 *
21 * @param array $params
22 * Array of property.
23 *
24 * @throws Exception
25 * @return array
26 * api result array
27 */
28 function civicrm_api3_mailing_event_queue_create($params) {
29 if (!array_key_exists('id', $params) && !array_key_exists('email_id', $params) && !array_key_exists('phone_id', $params)) {
30 throw new API_Exception("Mandatory key missing from params array: id, email_id, or phone_id field is required");
31 }
32 civicrm_api3_verify_mandatory($params,
33 'CRM_Mailing_DAO_MailingJob',
34 ['job_id', 'contact_id'],
35 FALSE
36 );
37 return _civicrm_api3_basic_create('CRM_Mailing_Event_BAO_Queue', $params, 'Queue');
38 }
39
40 /**
41 * Get mailing event queue record.
42 *
43 * @param array $params
44 *
45 * @return array
46 */
47 function civicrm_api3_mailing_event_queue_get($params) {
48 return _civicrm_api3_basic_get('CRM_Mailing_Event_BAO_Queue', $params);
49 }
50
51 /**
52 * Delete mailing event queue record.
53 *
54 * @param array $params
55 *
56 * @return array
57 * @throws \API_Exception
58 */
59 function civicrm_api3_mailing_event_queue_delete($params) {
60 return _civicrm_api3_basic_delete('CRM_Mailing_Event_BAO_Queue', $params);
61 }
62
63 /**
64 * Adjust Metadata for Create action.
65 *
66 * The metadata is used for setting defaults, documentation & validation.
67 *
68 * @param array $params
69 * Array of parameters determined by getfields.
70 */
71 function _civicrm_api3_mailing_event_queue_create_spec(&$params) {
72 $params['job_id']['api.required'] = 1;
73 $params['contact_id']['api.required'] = 1;
74 }