f20f9815fb4f2c2bbc255498db9ea35ca2f4c59b
[civicrm-core.git] / api / v3 / FinancialTrxn.php
1 <?php
2
3 /*
4 +--------------------------------------------------------------------+
5 | CiviCRM version 4.4 |
6 +--------------------------------------------------------------------+
7 | Copyright CiviCRM LLC (c) 2004-2013 |
8 +--------------------------------------------------------------------+
9 | This file is a part of CiviCRM. |
10 | |
11 | CiviCRM is free software; you can copy, modify, and distribute it |
12 | under the terms of the GNU Affero General Public License |
13 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
14 | |
15 | CiviCRM is distributed in the hope that it will be useful, but |
16 | WITHOUT ANY WARRANTY; without even the implied warranty of |
17 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
18 | See the GNU Affero General Public License for more details. |
19 | |
20 | You should have received a copy of the GNU Affero General Public |
21 | License and the CiviCRM Licensing Exception along |
22 | with this program; if not, contact CiviCRM LLC |
23 | at info[AT]civicrm[DOT]org. If you have questions about the |
24 | GNU Affero General Public License or the licensing of CiviCRM, |
25 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
26 +--------------------------------------------------------------------+
27 */
28
29 /**
30 * File for the CiviCRM APIv3 financial_transaction functions
31 *
32 * @package CiviCRM_APIv3
33 * @subpackage API_FinancialTransation
34 *
35 * @copyright CiviCRM LLC (c) 2004-2013
36 * @version $Id: FinancialTransation.php 2011-02-16 ErikHommel $
37 */
38
39 /**
40 * Add an FinancialTransation for a contact
41 *
42 * Allowed @params array keys are:
43 *
44 * @example FinancialTransationCreate.php Standard Create Example
45 *
46 * @return array API result array
47 * {@getfields financial_transaction_create}
48 * @access public
49 */
50 function civicrm_api3_financial_transaction_create($params) {
51 return _civicrm_api3_basic_create(_civicrm_api3_get_BAO(__FUNCTION__), $params);
52 }
53
54
55 /**
56 * @param $params
57 */
58 function _civicrm_api3_financial_transaction_create_spec(&$params) {
59 $params['trxn_date']['api.default'] = 'now';
60 $params['payment_instrument_id']['api.required'] = TRUE;
61 $params['total_amount']['api.required'] = TRUE;
62 $params['contribution_id']['api.required'] = TRUE;
63 $params['created_id']['api.default'] = 'user_contact_id';
64 $params['contribution_status_id'] = array('title' => 'Optional over-ride for status id');
65 $params['participant_status_id'] = array('title' => 'Optional Over-ride for participant id');
66 $params['send_receipt'] = array('title' => 'Send a receipt using built in template (possible future would be to specify the template)');
67 }
68
69
70 /**
71 * Deletes an existing FinancialTransation
72 *
73 * @param array $params
74 *
75 * @example FinancialTransationDelete.php Standard Delete Example
76 *
77 * @return boolean | error true if successfull, error otherwise
78 * {@getfields financial_transaction_delete}
79 * @access public
80 */
81 function civicrm_api3_financial_transaction_delete($params) {
82 //return 'go away - you can't delete transactions';
83 }
84
85 /**
86 * Retrieve one or more financial_transactions
87 *
88 * @param array input parameters
89 *
90 *
91 * @example FinancialTransationGet.php Standard Get Example
92 *
93 * @param array $params an associative array of name/value pairs.
94 *
95 * @return array api result array
96 * {@getfields financial_transaction_get}
97 * @access public
98 */
99 function civicrm_api3_financial_transaction_get($params) {
100
101 return _civicrm_api3_basic_get(_civicrm_api3_get_BAO(__FUNCTION__), $params);
102 }
103