Update Copywrite year to be 2019
[civicrm-core.git] / api / v3 / ActionSchedule.php
CommitLineData
e790a8cb 1<?php
e790a8cb 2/*
3 +--------------------------------------------------------------------+
fee14197 4 | CiviCRM version 5 |
e790a8cb 5 +--------------------------------------------------------------------+
6b83d5bd 6 | Copyright CiviCRM LLC (c) 2004-2019 |
e790a8cb 7 +--------------------------------------------------------------------+
8 | This file is a part of CiviCRM. |
9 | |
10 | CiviCRM is free software; you can copy, modify, and distribute it |
11 | under the terms of the GNU Affero General Public License |
12 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
13 | |
14 | CiviCRM is distributed in the hope that it will be useful, but |
15 | WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
17 | See the GNU Affero General Public License for more details. |
18 | |
19 | You should have received a copy of the GNU Affero General Public |
20 | License and the CiviCRM Licensing Exception along |
21 | with this program; if not, contact CiviCRM LLC |
22 | at info[AT]civicrm[DOT]org. If you have questions about the |
23 | GNU Affero General Public License or the licensing of CiviCRM, |
24 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
25 +--------------------------------------------------------------------+
d25dd0ee 26 */
e790a8cb 27
28/**
b081365f 29 * This api exposes CiviCRM Scheduled Reminders.
e790a8cb 30 *
31 * @package CiviCRM_APIv3
e790a8cb 32 */
33
34/**
244bbdd8 35 * Get CiviCRM ActionSchedule details.
61fe4988 36 *
d0997921 37 * @param array $params
61fe4988 38 *
645ee340 39 * @return array
00f8641b 40 * API result array
e790a8cb 41 */
42function civicrm_api3_action_schedule_get($params) {
244bbdd8 43 return _civicrm_api3_basic_get(_civicrm_api3_get_BAO(__FUNCTION__), $params, 'ActionSchedule');
e790a8cb 44}
45
46
47/**
244bbdd8 48 * Create a new ActionSchedule.
e790a8cb 49 *
50 * @param array $params
51 *
52 * @return array
e790a8cb 53 */
54function civicrm_api3_action_schedule_create($params) {
a01fa90c 55 civicrm_api3_verify_one_mandatory($params, NULL, array('start_action_date', 'absolute_date'));
a3ceebba 56 if (!array_key_exists('name', $params) && !array_key_exists('id', $params)) {
e8829f77
E
57 $params['name'] = CRM_Utils_String::munge($params['title']);
58 }
244bbdd8 59 return _civicrm_api3_basic_create(_civicrm_api3_get_BAO(__FUNCTION__), $params, 'ActionSchedule');
e790a8cb 60}
61
62/**
0aa0303c
EM
63 * Adjust Metadata for Create action.
64 *
65 * The metadata is used for setting defaults, documentation & validation.
e790a8cb 66 *
cf470720 67 * @param array $params
b081365f 68 * Array of parameters determined by getfields.
e790a8cb 69 */
70function _civicrm_api3_action_schedule_create_spec(&$params) {
a01fa90c
EM
71 $params['title']['api.required'] = TRUE;
72 $params['mapping_id']['api.required'] = TRUE;
a01fa90c 73 $params['entity_value']['api.required'] = TRUE;
e790a8cb 74}
75
76/**
244bbdd8 77 * Delete an existing ActionSchedule.
e790a8cb 78 *
cf470720 79 * @param array $params
b081365f 80 * Array containing id of the action_schedule to be deleted.
e790a8cb 81 *
a6c01b45 82 * @return array
72b3a70c 83 * API result array
e790a8cb 84 */
85function civicrm_api3_action_schedule_delete($params) {
86 return _civicrm_api3_basic_delete(_civicrm_api3_get_BAO(__FUNCTION__), $params);
f54c2beb 87}