PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.13.3
GiveWP – Donation Plugin and Fundraising Platform v2.13.3
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 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.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / PaymentGateways / PayPalCommerce / AdvancedCardFields.php
give / src / PaymentGateways / PayPalCommerce Last commit date
DataTransferObjects 5 years ago Models 5 years ago Repositories 5 years ago Webhooks 5 years ago AccountAdminNotices.php 5 years ago AdminSettingFields.php 5 years ago AdvancedCardFields.php 5 years ago AjaxRequestHandler.php 5 years ago DonationDetailsPage.php 5 years ago DonationFormPaymentMethod.php 5 years ago DonationProcessor.php 5 years ago PayPalClient.php 5 years ago PayPalCommerce.php 5 years ago RefreshToken.php 5 years ago RefundPaymentHandler.php 5 years ago ScriptLoader.php 5 years ago Utils.php 5 years ago onBoardingRedirectHandler.php 5 years ago
AdvancedCardFields.php
76 lines
1 <?php
2
3 namespace Give\PaymentGateways\PayPalCommerce;
4
5 use Give\Helpers\Form\Template;
6 use Give\PaymentGateways\PayPalCommerce\Repositories\Settings;
7
8 /**
9 * Class AdvancedCardFields
10 * @package Give\PaymentGateways\PayPalCommerce
11 *
12 * @since 2.9.0
13 */
14 class AdvancedCardFields {
15 /**
16 * @var Settings
17 */
18 private $payPalDonationsSettings;
19
20 /**
21 * AdvancedCardFields constructor.
22 *
23 * @param Settings $payPalDonationsSettings
24 */
25 public function __construct( Settings $payPalDonationsSettings ) {
26 $this->payPalDonationsSettings = $payPalDonationsSettings;
27 }
28
29 /**
30 * PayPal commerce uses smart buttons to accept payment.
31 *
32 * @since 2.9.0
33 * @since 2.11.1 Show billing fields conditionally.
34 *
35 * @param int $formId Donation Form ID.
36 */
37 public function addCreditCardForm( $formId ) {
38 $this->registerCustomBillingFieldsSectionLabel();
39 if ( ! $this->payPalDonationsSettings->canCollectBillingInformation() ) {
40 $this->removeBillingField();
41 }
42 give_get_cc_form( $formId );
43 }
44
45 /**
46 * Remove Address Fields if user has option enabled.
47 *
48 * @since 2.9.0
49 */
50 private function removeBillingField() {
51 remove_action( 'give_after_cc_fields', [ $this, 'addBillingFieldsSectionLabel' ], 1 );
52 remove_action( 'give_after_cc_fields', 'give_default_cc_address_fields' );
53 }
54
55 /**
56 * @since 2.11.1
57 */
58 private function registerCustomBillingFieldsSectionLabel() {
59 if ( 'sequoia' !== Template::getActiveID() ) {
60 return;
61 }
62
63 add_action( 'give_after_cc_fields', [ $this, 'addBillingFieldsSectionLabel' ], 1 );
64 }
65
66 /**
67 * @since 2.11.1
68 */
69 public function addBillingFieldsSectionLabel() {
70 echo sprintf(
71 '<div class="paypal-commerce_billing_fields_section_label"><p>%1$s</p></div>',
72 esc_html__( 'Billing Details', 'give' )
73 );
74 }
75 }
76