diff --git a/api/v3/Stripe/Ipn.php b/api/v3/Stripe/Ipn.php index 6114cad286fc8e3ba1c4ee1b504796277b064fc4..6767a9232d442571812838b5d4fe270476d74680 100644 --- a/api/v3/Stripe/Ipn.php +++ b/api/v3/Stripe/Ipn.php @@ -19,8 +19,6 @@ * Stripe.Ipn API specification * * @param array $spec description of fields supported by this API call - * @return void - * @see http://wiki.civicrm.org/confluence/display/CRMDOC/API+Architecture+Standards */ function _civicrm_api3_stripe_Ipn_spec(&$spec) { $spec['id']['title'] = ts("CiviCRM System Log id to replay from system log."); @@ -34,10 +32,12 @@ function _civicrm_api3_stripe_Ipn_spec(&$spec) { * Stripe.Ipn API * * @param array $params + * * @return array API result descriptor - * @see civicrm_api3_create_success - * @see civicrm_api3_create_error - * @throws API_Exception + * @throws \API_Exception + * @throws \CRM_Core_Exception + * @throws \CiviCRM_API3_Exception + * @throws \Stripe\Error\Api */ function civicrm_api3_stripe_Ipn($params) { $object = NULL; @@ -87,5 +87,4 @@ function civicrm_api3_stripe_Ipn($params) { trigger_error("The api depends on CRM_Core_Payment_StripeIPN"); } return civicrm_api3_create_success(array()); - } diff --git a/api/v3/Stripe/Listevents.php b/api/v3/Stripe/Listevents.php index 19b875351fa21466c55dfdb73d082e11ff6b8ba1..accb29f5c99b840975e13895f353c1e8c7337087 100644 --- a/api/v3/Stripe/Listevents.php +++ b/api/v3/Stripe/Listevents.php @@ -13,10 +13,9 @@ /** * Stripe.ListEvents API specification * - * * @param array $spec description of fields supported by this API call + * * @return void - * @see http://wiki.civicrm.org/confluence/display/CRMDOC/API+Architecture+Standards */ function _civicrm_api3_stripe_ListEvents_spec(&$spec) { $spec['ppid']['title'] = ts("Use the given Payment Processor ID"); @@ -34,92 +33,92 @@ function _civicrm_api3_stripe_ListEvents_spec(&$spec) { * Stripe.VerifyEventType * * @param string $eventType - * @return bolean True if valid type, false otherwise. + * + * @return boolean True if valid type, false otherwise. */ function civicrm_api3_stripe_VerifyEventType($eventType) { - - return in_array($eventType, array( - 'account.external_account.created', - 'account.external_account.deleted', - 'account.external_account.updated', - 'application_fee.created', - 'application_fee.refunded', - 'application_fee.refund.updated', - 'balance.available', - 'bitcoin.receiver.created', - 'bitcoin.receiver.filled', - 'bitcoin.receiver.updated', - 'bitcoin.receiver.transaction.created', - 'charge.captured', - 'charge.failed', - 'charge.pending', - 'charge.refunded', - 'charge.succeeded', - 'charge.updated', - 'charge.dispute.closed', - 'charge.dispute.created', - 'charge.dispute.funds_reinstated', - 'charge.dispute.funds_withdrawn', - 'charge.dispute.updated', - 'charge.refund.updated', - 'coupon.created', - 'coupon.deleted', - 'coupon.updated', - 'customer.created', - 'customer.deleted', - 'customer.updated', - 'customer.discount.created', - 'customer.discount.deleted', - 'customer.discount.updated', - 'customer.source.created', - 'customer.source.deleted', - 'customer.source.updated', - 'customer.subscription.created', - 'customer.subscription.deleted', - 'customer.subscription.trial_will_end', - 'customer.subscription.updated', - 'invoice.created', - 'invoice.payment_failed', - 'invoice.payment_succeeded', - 'invoice.upcoming', - 'invoice.updated', - 'invoiceitem.created', - 'invoiceitem.deleted', - 'invoiceitem.updated', - 'order.created', - 'order.payment_failed', - 'order.payment_succeeded', - 'order.updated', - 'order_return.created', - 'payout.canceled', - 'payout.created', - 'payout.failed', - 'payout.paid', - 'payout.updated', - 'plan.created', - 'plan.deleted', - 'plan.updated', - 'product.created', - 'product.deleted', - 'product.updated', - 'recipient.created', - 'recipient.deleted', - 'recipient.updated', - 'review.closed', - 'review.opened', - 'sku.created', - 'sku.deleted', - 'sku.updated', - 'source.canceled', - 'source.chargeable', - 'source.failed', - 'source.transaction.created', - 'transfer.created', - 'transfer.reversed', - 'transfer.updated', - 'ping', - ) - ); + return in_array($eventType, [ + 'account.external_account.created', + 'account.external_account.deleted', + 'account.external_account.updated', + 'application_fee.created', + 'application_fee.refunded', + 'application_fee.refund.updated', + 'balance.available', + 'bitcoin.receiver.created', + 'bitcoin.receiver.filled', + 'bitcoin.receiver.updated', + 'bitcoin.receiver.transaction.created', + 'charge.captured', + 'charge.failed', + 'charge.pending', + 'charge.refunded', + 'charge.succeeded', + 'charge.updated', + 'charge.dispute.closed', + 'charge.dispute.created', + 'charge.dispute.funds_reinstated', + 'charge.dispute.funds_withdrawn', + 'charge.dispute.updated', + 'charge.refund.updated', + 'coupon.created', + 'coupon.deleted', + 'coupon.updated', + 'customer.created', + 'customer.deleted', + 'customer.updated', + 'customer.discount.created', + 'customer.discount.deleted', + 'customer.discount.updated', + 'customer.source.created', + 'customer.source.deleted', + 'customer.source.updated', + 'customer.subscription.created', + 'customer.subscription.deleted', + 'customer.subscription.trial_will_end', + 'customer.subscription.updated', + 'invoice.created', + 'invoice.payment_failed', + 'invoice.payment_succeeded', + 'invoice.upcoming', + 'invoice.updated', + 'invoiceitem.created', + 'invoiceitem.deleted', + 'invoiceitem.updated', + 'order.created', + 'order.payment_failed', + 'order.payment_succeeded', + 'order.updated', + 'order_return.created', + 'payout.canceled', + 'payout.created', + 'payout.failed', + 'payout.paid', + 'payout.updated', + 'plan.created', + 'plan.deleted', + 'plan.updated', + 'product.created', + 'product.deleted', + 'product.updated', + 'recipient.created', + 'recipient.deleted', + 'recipient.updated', + 'review.closed', + 'review.opened', + 'sku.created', + 'sku.deleted', + 'sku.updated', + 'source.canceled', + 'source.chargeable', + 'source.failed', + 'source.transaction.created', + 'transfer.created', + 'transfer.reversed', + 'transfer.updated', + 'ping', + ] + ); } /** @@ -147,7 +146,7 @@ function civicrm_api3_stripe_ProcessParams($params) { $starting_after = $params['starting_after']; } - // Check to see if we should filter by type. + // Check to see if we should filter by type. if (array_key_exists('type', $params) ) { // Validate - since we will be appending this to an URL. if (!civicrm_api3_stripe_VerifyEventType($params['type'])) { @@ -172,10 +171,11 @@ function civicrm_api3_stripe_ProcessParams($params) { * Stripe.ListEvents API * * @param array $params + * * @return array API result descriptor - * @see civicrm_api3_create_success - * @see civicrm_api3_create_error - * @throws API_Exception + * @throws \API_Exception + * @throws \CiviCRM_API3_Exception + * @throws \Stripe\Error\Api */ function civicrm_api3_stripe_Listevents($params) { $parsed = civicrm_api3_stripe_ProcessParams($params); @@ -184,7 +184,7 @@ function civicrm_api3_stripe_Listevents($params) { $limit = $parsed['limit']; $starting_after = $parsed['starting_after']; - $args = array(); + $args = []; if ($type) { $args['type'] = $type; } @@ -208,15 +208,15 @@ function civicrm_api3_stripe_Listevents($params) { } $out = $data_list; if ($params['output'] == 'brief') { - $out = array(); + $out = []; foreach($data_list['data'] as $data) { - $item = array( + $item = [ 'id' => $data['id'], 'created' => date('Y-m-d H:i:s', $data['created']), 'livemode' => $data['livemode'], 'pending_webhooks' => $data['pending_webhooks'], 'type' => $data['type'], - ); + ]; if (preg_match('/invoice\.payment_/', $data['type'])) { $item['invoice'] = $data['data']['object']->id; $item['charge'] = $data['data']['object']->charge; @@ -226,13 +226,14 @@ function civicrm_api3_stripe_Listevents($params) { // Check if this is in the contributions table. $item['processed'] = 'no'; - $results = civicrm_api3('Contribution', 'get', array('trxn_id' => $item['charge'])); + $results = civicrm_api3('Contribution', 'get', ['trxn_id' => $item['charge']]); if ($results['count'] > 0) { $item['processed'] = 'yes'; } else { - // Newer versions of stripe store the invoice id in trxn_id. - $results = civicrm_api3('Contribution', 'get', array('trxn_id' => $item['invoice'])); + // From 6.0 we store the Stripe Invoice ID in the Contribution.trxn_id if available (ie it's a recur). + // Otherwise we continue to store the Stripe Charge ID. + $results = civicrm_api3('Contribution', 'get', ['trxn_id' => $item['invoice']]); if ($results['count'] > 0) { $item['processed'] = 'yes'; } @@ -242,7 +243,4 @@ function civicrm_api3_stripe_Listevents($params) { } } return civicrm_api3_create_success($out); - } - - diff --git a/api/v3/Stripe/Populatelog.php b/api/v3/Stripe/Populatelog.php index cd221f709311bf15088f2e2113148d98319bbd17..a52b0d7fbcc36316328a7e3ff8527e8cea869805 100644 --- a/api/v3/Stripe/Populatelog.php +++ b/api/v3/Stripe/Populatelog.php @@ -17,8 +17,6 @@ * Stripe.Populatelog API specification * * @param array $spec description of fields supported by this API call - * @return void - * @see http://wiki.civicrm.org/confluence/display/CRMDOC/API+Architecture+Standards */ function _civicrm_api3_stripe_Populatelog_spec(&$spec) { $spec['ppid']['title'] = ts("The id of the payment processor."); @@ -28,10 +26,10 @@ function _civicrm_api3_stripe_Populatelog_spec(&$spec) { * Stripe.Populatelog API * * @param array $params + * * @return array API result descriptor - * @see civicrm_api3_create_success - * @see civicrm_api3_create_error - * @throws API_Exception + * @throws \API_Exception + * @throws \CiviCRM_API3_Exception */ function civicrm_api3_stripe_Populatelog($params) { $ppid = NULL; @@ -41,7 +39,7 @@ function civicrm_api3_stripe_Populatelog($params) { else { // By default, select the live stripe processor (we expect there to be // only one). - $query_params = array('class_name' => 'Payment_Stripe', 'is_test' => 0, 'return' => 'id'); + $query_params = ['class_name' => 'Payment_Stripe', 'is_test' => 0, 'return' => 'id']; try { $ppid = civicrm_api3('PaymentProcessor', 'getvalue', $params); } @@ -50,12 +48,12 @@ function civicrm_api3_stripe_Populatelog($params) { } } - $params = array('limit' => 100, 'type' => 'invoice.payment_succeeded'); + $params = ['limit' => 100, 'type' => 'invoice.payment_succeeded']; if ($ppid) { $params['ppid'] = $ppid; } - $items = array(); + $items = []; $last_item = NULL; $more = TRUE; while(1) { @@ -71,7 +69,7 @@ function civicrm_api3_stripe_Populatelog($params) { $items = array_merge($items, $objects['values']['data']); $last_item = end($objects['values']['data']); } - $results = array(); + $results = []; foreach($items as $item) { $id = $item->id; // Insert into System Log if it doesn't exist. @@ -94,7 +92,7 @@ function civicrm_api3_stripe_Populatelog($params) { } function civcrm_api3_stripe_cid_for_trxn($trxn) { - $params = array('trxn_id' => $trxn, 'return' => 'contact_id'); + $params = ['trxn_id' => $trxn, 'return' => 'contact_id']; $result = civicrm_api3('Contribution', 'getvalue', $params); return $result; } diff --git a/api/v3/Stripe/Setuptest.php b/api/v3/Stripe/Setuptest.php index 9ff8182b5ed34200969b994dc42b10fdf4cf495f..7a7f843c5c7c2183085b9dd08d8b5dd669199d3a 100644 --- a/api/v3/Stripe/Setuptest.php +++ b/api/v3/Stripe/Setuptest.php @@ -13,8 +13,6 @@ * Stripe.Setuptest API specification * * @param array $spec description of fields supported by this API call - * @return void - * @see http://wiki.civicrm.org/confluence/display/CRMDOC/API+Architecture+Standards */ function _civicrm_api3_stripe_Setuptest_spec(&$spec) { // Note: these test credentials belong to PTP and are contributed to @@ -28,28 +26,28 @@ function _civicrm_api3_stripe_Setuptest_spec(&$spec) { * Stripe.Setuptest API * * @param array $params + * * @return array API result descriptor - * @see civicrm_api3_create_success - * @see civicrm_api3_create_error - * @throws API_Exception + * + * @throws \CiviCRM_API3_Exception */ function civicrm_api3_stripe_Setuptest($params) { - $params = array( - 'name' => 'Stripe', - 'domain_id' => CRM_Core_Config::domainID(), - 'payment_processor_type_id' => 'Stripe', - 'title' => 'Stripe', - 'is_active' => 1, - 'is_default' => 0, - 'is_test' => 1, - 'is_recur' => 1, - 'user_name' => $params['sk'], - 'password' => $params['pk'], - 'url_site' => 'https://api.stripe.com/v1', - 'url_recur' => 'https://api.stripe.com/v1', - 'class_name' => 'Payment_Stripe', - 'billing_mode' => 1 - ); + $params = [ + 'name' => 'Stripe', + 'domain_id' => CRM_Core_Config::domainID(), + 'payment_processor_type_id' => 'Stripe', + 'title' => 'Stripe', + 'is_active' => 1, + 'is_default' => 0, + 'is_test' => 1, + 'is_recur' => 1, + 'user_name' => $params['sk'], + 'password' => $params['pk'], + 'url_site' => 'https://api.stripe.com/v1', + 'url_recur' => 'https://api.stripe.com/v1', + 'class_name' => 'Payment_Stripe', + 'billing_mode' => 1 + ]; // First see if it already exists. $result = civicrm_api3('PaymentProcessor', 'get', $params); if ($result['count'] != 1) {