function commerce_paypal_checkout_update_order in Commerce PayPal 7.2
Update the PayPal order.
Parameters
$order: The order.
$payment_method: The payment method instance.
Return value
bool TRUE if the update was successful, FALSE otherwise.
See also
commerce_paypal_checkout_review_pane_checkout_form_submit()
1 call to commerce_paypal_checkout_update_order()
- commerce_paypal_checkout_review_pane_checkout_form_submit in modules/
checkout/ includes/ commerce_paypal_checkout.checkout_pane.inc - Submit handler for the PayPal Checkout review and confirm page.
File
- modules/
checkout/ commerce_paypal_checkout.module, line 1197 - Implements PayPal Checkout in Drupal Commerce checkout.
Code
function commerce_paypal_checkout_update_order($order, $payment_method) {
if (!isset($order->data['commerce_paypal_checkout']['remote_id'])) {
return FALSE;
}
$remote_id = $order->data['commerce_paypal_checkout']['remote_id'];
$request_body = commerce_paypal_checkout_prepare_order_request($order, $payment_method['settings']);
$update_params = array(
array(
'op' => 'replace',
'path' => "/purchase_units/@reference_id=='default'",
'value' => $request_body['purchase_units'][0],
),
);
drupal_alter('commerce_paypal_checkout_update_order_request', $update_params, $order);
$api_client = commerce_paypal_checkout_api_client($payment_method['settings']);
try {
$api_client
->updateOrder($remote_id, $update_params);
// Assume the update worked if we ended up here, if the update failed,
// an exception was thrown.
return TRUE;
} catch (\Exception $exception) {
watchdog_exception('commerce_paypal_checkout', $exception);
return FALSE;
}
}