mirror of
https://github.com/woocommerce/woocommerce-paypal-payments.git
synced 2025-09-03 08:37:53 +08:00
Add order status CREATED
to order processor check
This commit is contained in:
parent
77230fefa8
commit
8a0b439e5f
3 changed files with 12 additions and 9 deletions
|
@ -173,10 +173,10 @@ class ApproveOrderEndpoint implements EndpointInterface {
|
|||
wp_send_json_success( $order );
|
||||
}
|
||||
|
||||
if ( ! $order->status()->is( OrderStatus::APPROVED ) ) {
|
||||
if ( ! $order->status()->is( OrderStatus::APPROVED ) && ! $order->status()->is( OrderStatus::CREATED ) ) {
|
||||
$message = sprintf(
|
||||
// translators: %s is the id of the order.
|
||||
__( 'Order %s is not approved yet.', 'woocommerce-paypal-payments' ),
|
||||
__( 'Order %s is not ready for processing yet.', 'woocommerce-paypal-payments' ),
|
||||
$data['order_id']
|
||||
);
|
||||
|
||||
|
|
|
@ -160,9 +160,9 @@ class OrderProcessor {
|
|||
$this->add_paypal_meta( $wc_order, $order, $this->environment );
|
||||
|
||||
$error_message = null;
|
||||
if ( ! $this->order_is_approved( $order ) ) {
|
||||
if ( ! $this->order_is_ready_for_process( $order ) ) {
|
||||
$error_message = __(
|
||||
'The payment has not been approved yet.',
|
||||
'The payment is not ready for processing yet.',
|
||||
'woocommerce-paypal-payments'
|
||||
);
|
||||
}
|
||||
|
@ -269,15 +269,15 @@ class OrderProcessor {
|
|||
}
|
||||
|
||||
/**
|
||||
* Whether a given order is approved.
|
||||
* Whether a given order is ready for processing.
|
||||
*
|
||||
* @param Order $order The order.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function order_is_approved( Order $order ): bool {
|
||||
private function order_is_ready_for_process( Order $order ): bool {
|
||||
|
||||
if ( $order->status()->is( OrderStatus::APPROVED ) ) {
|
||||
if ( $order->status()->is( OrderStatus::APPROVED ) || $order->status()->is( OrderStatus::CREATED ) ) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -285,7 +285,7 @@ class OrderProcessor {
|
|||
return false;
|
||||
}
|
||||
|
||||
$is_approved = in_array(
|
||||
return in_array(
|
||||
$this->threed_secure->proceed_with_order( $order ),
|
||||
array(
|
||||
ThreeDSecure::NO_DECISION,
|
||||
|
@ -293,6 +293,5 @@ class OrderProcessor {
|
|||
),
|
||||
true
|
||||
);
|
||||
return $is_approved;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -306,6 +306,10 @@ class OrderProcessorTest extends TestCase
|
|||
->expects('is')
|
||||
->with(OrderStatus::APPROVED)
|
||||
->andReturn(false);
|
||||
$orderStatus
|
||||
->expects('is')
|
||||
->with(OrderStatus::CREATED)
|
||||
->andReturn(false);
|
||||
$orderId = 'abc';
|
||||
$orderIntent = 'CAPTURE';
|
||||
$currentOrder = Mockery::mock(Order::class);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue