function uc_credit_log_authorization in Ubercart 8.4
Same name and namespace in other branches
- 5 payment/uc_credit/uc_credit.module \uc_credit_log_authorization()
- 6.2 payment/uc_credit/uc_credit.module \uc_credit_log_authorization()
- 7.3 payment/uc_credit/uc_credit.module \uc_credit_log_authorization()
Stores a credit card authorization to an order's data array.
Parameters
int $order_id: The order associated with the credit card authorization.
string $auth_id: The payment service's ID for the authorization.
float $amount: The amount that was authorized on the card.
Return value
array The entire updated data array for the order.
2 calls to uc_credit_log_authorization()
- AuthorizeNet::_uc_authorizenet_charge in payment/
uc_authorizenet/ src/ Plugin/ Ubercart/ PaymentMethod/ AuthorizeNet.php - Handles authorizations and captures through AIM at Authorize.Net.
- PayPalWebsitePaymentsPro::chargeCard in payment/
uc_paypal/ src/ Plugin/ Ubercart/ PaymentMethod/ PayPalWebsitePaymentsPro.php - Called when a credit card should be processed.
File
- payment/
uc_credit/ uc_credit.module, line 227 - Defines the credit card payment method and hooks in payment gateways.
Code
function uc_credit_log_authorization($order_id, $auth_id, $amount) {
// Load the existing order data array.
$connection = \Drupal::database();
$data = $connection
->query("SELECT data FROM {uc_orders} WHERE order_id = :id", [
':id' => $order_id,
])
->fetchField();
$data = unserialize($data);
// Add the authorization to the cc_txns.
$data['cc_txns']['authorizations'][$auth_id] = [
'amount' => $amount,
'authorized' => \Drupal::time()
->getRequestTime(),
];
// Save the updated data array to the database.
$connection
->update('uc_orders')
->fields([
'data' => serialize($data),
])
->condition('order_id', $order_id)
->execute();
return $data;
}