-
Signed-off-by:
Kevin Cristiano <kcristiano@kcristiano.com>
Signed-off-by:
Kevin Cristiano <kcristiano@kcristiano.com>
AuthorizeIPN.php 2.78 KiB
<?php
/**
* AuthorizeIPN controller class.
*
* Replacement for CiviCRM's 'extern/authorizeIPN.php'.
*
* @see https://docs.civicrm.org/sysadmin/en/latest/setup/payment-processors/authorize-net/#shell-script-testing-method
*
* @since 0.1
*/
namespace CiviCRM_WP_REST\Controller;
class AuthorizeIPN extends Base {
/**
* The base route.
*
* @since 0.1
* @var string
*/
protected $rest_base = 'authorizeIPN';
/**
* Registers routes.
*
* @since 0.1
*/
public function register_routes() {
register_rest_route( $this->get_namespace(), $this->get_rest_base(), [
[
'methods' => \WP_REST_Server::ALLMETHODS,
'callback' => [ $this, 'get_item' ]
]
] );
}
/**
* Get items.
*
* @since 0.1
* @param WP_REST_Request $request
*/
public function get_item( $request ) {
/**
* Filter request params.
*
* @since 0.1
* @param array $params
* @param WP_REST_Request $request
*/
$params = apply_filters( 'civi_wp_rest/controller/authorizeIPN/params', $request->get_params(), $request );
$authorize_IPN = new \CRM_Core_Payment_AuthorizeNetIPN( $params );
// log notification
\Civi::log()->alert( 'payment_notification processor_name=AuthNet', $params );
/**
* Filter AuthorizeIPN object.
*
* @param CRM_Core_Payment_AuthorizeNetIPN $authorize_IPN
* @param array $params
* @param WP_REST_Request $request
*/
$authorize_IPN = apply_filters( 'civi_wp_rest/controller/authorizeIPN/instance', $authorize_IPN, $params, $request );