PluginProbe ʕ •ᴥ•ʔ
WooCommerce Square / 2.2.2
WooCommerce Square v2.2.2
5.5.0 5.4.3 5.4.2 5.4.1 5.4.0 trunk 1.0.25 1.0.26 1.0.27 1.0.28 1.0.29 1.0.30 1.0.31 1.0.32 1.0.33 1.0.34 1.0.35 1.0.36 1.0.37 1.0.38 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.3.0 2.3.1 2.3.2 2.3.3 2.3.4 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.5.3 2.6.0 2.7.0 2.8.0 2.9.0 2.9.1 3.0.0 3.0.1 3.0.2 3.0.3 3.1.0 3.2.0 3.3.0 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.7.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.9.0 4.0.0 4.1.0 4.2.0 4.2.1 4.2.2 4.2.3 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.4.2 4.5.0 4.5.1 4.5.2 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.8.0 4.8.1 4.8.2 4.8.3 4.8.4 4.8.5 4.8.6 4.8.7 4.8.8 4.9.0 4.9.1 4.9.2 4.9.3 4.9.4 4.9.5 4.9.6 4.9.7 4.9.8 4.9.9 5.0.0 5.0.1 5.1.0 5.1.1 5.1.2 5.2.0 5.3.0 5.3.1 5.3.2 5.3.3
woocommerce-square / includes / Gateway / API / Responses / Get_Customer.php
woocommerce-square / includes / Gateway / API / Responses Last commit date
Charge.php 6 years ago Create_Customer.php 6 years ago Create_Customer_Card.php 6 years ago Create_Payment.php 6 years ago Get_Customer.php 6 years ago Refund.php 6 years ago
Get_Customer.php
77 lines
1 <?php
2 /**
3 * WooCommerce Square
4 *
5 * This source file is subject to the GNU General Public License v3.0
6 * that is bundled with this package in the file license.txt.
7 * It is also available through the world-wide-web at this URL:
8 * http://www.gnu.org/licenses/gpl-3.0.html
9 * If you did not receive a copy of the license and are unable to
10 * obtain it through the world-wide-web, please send an email
11 * to license@woocommerce.com so we can send you a copy immediately.
12 *
13 * DISCLAIMER
14 *
15 * Do not edit or add to this file if you wish to upgrade WooCommerce Square to newer
16 * versions in the future. If you wish to customize WooCommerce Square for your
17 * needs please refer to https://docs.woocommerce.com/document/woocommerce-square/
18 *
19 * @author WooCommerce
20 * @copyright Copyright: (c) 2019, Automattic, Inc.
21 * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0
22 */
23
24 namespace WooCommerce\Square\Gateway\API\Responses;
25
26 defined( 'ABSPATH' ) || exit;
27
28 use SkyVerge\WooCommerce\PluginFramework\v5_4_0 as Framework;
29
30 /**
31 * Get customer response.
32 *
33 * @since 2.0.0
34 *
35 * @method \SquareConnect\Model\RetrieveCustomerResponse|array get_data()
36 */
37 class Get_Customer extends \WooCommerce\Square\Gateway\API\Response implements Framework\SV_WC_Payment_Gateway_API_Get_Tokenized_Payment_Methods_Response {
38
39
40 /**
41 * Returns any payment tokens.
42 *
43 * @since 1.0.0
44 *
45 * @return Framework\SV_WC_Payment_Gateway_Payment_Token[]
46 */
47 public function get_payment_tokens() {
48
49 $cards = $this->get_data() instanceof \SquareConnect\Model\RetrieveCustomerResponse ? $this->get_data()->getCustomer()->getCards() : array();
50 $tokens = array();
51
52 if ( is_array( $cards ) ) {
53
54 foreach ( $cards as $card ) {
55
56 $token_id = $card->getId();
57 $card_type = 'AMERICAN_EXPRESS' === $card->getCardBrand() ? Framework\SV_WC_Payment_Gateway_Helper::CARD_TYPE_AMEX : $card->getCardBrand();
58
59 $tokens[ $token_id ] = new Framework\SV_WC_Payment_Gateway_Payment_Token(
60 $token_id,
61 array(
62 'type' => 'credit_card',
63 'card_type' => $card_type,
64 'last_four' => $card->getLast4(),
65 'exp_month' => $card->getExpMonth(),
66 'exp_year' => $card->getExpYear(),
67 )
68 );
69 }
70 }
71
72 return $tokens;
73 }
74
75
76 }
77