Merge pull request #133 from pradpnayak/CRM-12061
[civicrm-core.git] / api / v3 / MailingGroup.php
1 <?php
2 // $Id$
3
4 /*
5 +--------------------------------------------------------------------+
6 | CiviCRM version 4.3 |
7 +--------------------------------------------------------------------+
8 | Copyright CiviCRM LLC (c) 2004-2013 |
9 +--------------------------------------------------------------------+
10 | This file is a part of CiviCRM. |
11 | |
12 | CiviCRM is free software; you can copy, modify, and distribute it |
13 | under the terms of the GNU Affero General Public License |
14 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
15 | |
16 | CiviCRM is distributed in the hope that it will be useful, but |
17 | WITHOUT ANY WARRANTY; without even the implied warranty of |
18 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
19 | See the GNU Affero General Public License for more details. |
20 | |
21 | You should have received a copy of the GNU Affero General Public |
22 | License and the CiviCRM Licensing Exception along |
23 | with this program; if not, contact CiviCRM LLC |
24 | at info[AT]civicrm[DOT]org. If you have questions about the |
25 | GNU Affero General Public License or the licensing of CiviCRM, |
26 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
27 +--------------------------------------------------------------------+
28 */
29
30 /**
31 *
32 * APIv3 functions for registering/processing mailing group events.
33 *
34 * @package CiviCRM_APIv3
35 * @subpackage API_MailerGroup
36 * @copyright CiviCRM LLC (c) 2004-2013
37 * $Id$
38 *
39 */
40
41 /**
42 * Files required for this package
43 */
44
45
46
47 require_once 'CRM/Contact/BAO/Group.php';
48 require_once 'CRM/Mailing/Event/BAO/Queue.php';
49 require_once 'CRM/Mailing/Event/BAO/Subscribe.php';
50 require_once 'CRM/Mailing/Event/BAO/Unsubscribe.php';
51 require_once 'CRM/Mailing/Event/BAO/Resubscribe.php';
52 require_once 'CRM/Mailing/Event/BAO/TrackableURLOpen.php';
53
54 /**
55 * Handle an unsubscribe event
56 * @deprecated
57 *
58 * @param array $params
59 *
60 * @return array
61 */
62 function civicrm_api3_mailing_group_event_unsubscribe($params) {
63 return civicrm_api('mailing_event_unsubscribe', 'create', $params);
64 }
65
66 /**
67 * Handle a site-level unsubscribe event
68 *
69 * @param array $params
70 *
71 * @return array
72 */
73 function civicrm_api3_mailing_group_event_domain_unsubscribe($params) {
74 $params['org_unsubscribe'] = 1;
75 return civicrm_api('mailing_event_unsubscribe', 'create', $params);
76 }
77
78 /**
79 * Handle a resubscription event
80 * @deprecated
81 *
82 * @param array $params
83 *
84 * @return array
85 */
86 function civicrm_api3_mailing_group_event_resubscribe($params) {
87 return civicrm_api('mailing_event_resubscribe', 'create', $params);
88 }
89
90 /**
91 * Handle a subscription event
92 * @deprecated
93 *
94 * @param array $params
95 *
96 * @return array
97 */
98 function civicrm_api3_mailing_group_event_subscribe($params) {
99 return civicrm_api('mailing_event_subscribe', 'create', $params);
100 }
101
102 function civicrm_api3_mailing_group_getfields($params) {
103 $dao = _civicrm_api3_get_DAO('Subscribe');
104 $file = str_replace('_', '/', $dao) . ".php";
105 require_once ($file);
106 $d = new $dao();
107 $fields = $d->fields();
108 $d->free();
109
110 $dao = _civicrm_api3_get_DAO('Unsubscribe');
111 $file = str_replace('_', '/', $dao) . ".php";
112 require_once ($file);
113 $d = new $dao();
114 $fields = $fields + $d->fields();
115 $d->free();
116
117 return civicrm_api3_create_success($fields);
118 }
119