| 1 |
<?php |
| 2 |
/** |
| 3 |
* Give - Stripe Core Gateway |
| 4 |
* |
| 5 |
* @since 2.5.0 |
| 6 |
* |
| 7 |
* @package Give |
| 8 |
* @subpackage Stripe Core |
| 9 |
* @copyright Copyright (c) 2019, GiveWP |
| 10 |
* @license https://opensource.org/licenses/gpl-license GNU Public License |
| 11 |
*/ |
| 12 |
|
| 13 |
// Exit, if accessed directly. |
| 14 |
if ( ! defined( 'ABSPATH' ) ) { |
| 15 |
exit; |
| 16 |
} |
| 17 |
|
| 18 |
/** |
| 19 |
* Check for class Give_Stripe_Invoices exists. |
| 20 |
* |
| 21 |
* @since 2.5.0 |
| 22 |
*/ |
| 23 |
if ( ! class_exists( 'Give_Stripe_Invoice' ) ) { |
| 24 |
|
| 25 |
class Give_Stripe_Invoice { |
| 26 |
|
| 27 |
/** |
| 28 |
* Retrieve Invoice/ |
| 29 |
* |
| 30 |
* @param string $id Invoice ID. |
| 31 |
* |
| 32 |
* @return \Stripe\Invoice |
| 33 |
*/ |
| 34 |
public function retrieve( $id ) { |
| 35 |
try { |
| 36 |
|
| 37 |
// Set Application Information. |
| 38 |
give_stripe_set_app_info(); |
| 39 |
|
| 40 |
// Retrieve Invoice by ID. |
| 41 |
$invoice = \Stripe\Invoice::retrieve( $id ); |
| 42 |
} catch ( Exception $e ) { |
| 43 |
|
| 44 |
// Something went wrong outside of Stripe. |
| 45 |
give_record_gateway_error( |
| 46 |
__( 'Stripe - Invoices Error', 'give' ), |
| 47 |
sprintf( |
| 48 |
/* translators: %s Exception Message. */ |
| 49 |
__( 'An error while retrieving invoice. Details: %s', 'give' ), |
| 50 |
$e->getMessage() |
| 51 |
) |
| 52 |
); |
| 53 |
give_set_error( 'Stripe Error', __( 'An error occurred while retrieving invoice. Please try again.', 'give' ) ); |
| 54 |
give_send_back_to_checkout( '?payment-mode=' . give_clean( $_GET['payment-mode'] ) ); |
| 55 |
|
| 56 |
return false; |
| 57 |
} |
| 58 |
|
| 59 |
return $invoice; |
| 60 |
} |
| 61 |
} |
| 62 |
} |
| 63 |
|