PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.33.4
GiveWP – Donation Plugin and Fundraising Platform v2.33.4
4.16.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 / ServiceProvider.php
give / src / PaymentGateways Last commit date
Actions 3 years ago DataTransferObjects 3 years ago Exceptions 4 years ago Gateways 2 years ago PayPalCommerce 2 years ago Stripe 3 years ago resources 4 years ago PaymentGateway.php 4 years ago PaypalSettingPage.php 3 years ago ServiceProvider.php 2 years ago SettingPage.php 4 years ago
ServiceProvider.php
106 lines
1 <?php
2
3 namespace Give\PaymentGateways;
4
5 use Give\Framework\LegacyPaymentGateways\Adapters\LegacyPaymentGatewayRegisterAdapter;
6 use Give\Framework\Migrations\MigrationsRegister;
7 use Give\Framework\PaymentGateways\PaymentGatewayRegister;
8 use Give\Framework\PaymentGateways\Routes\GatewayRoute;
9 use Give\Helpers\Hooks;
10 use Give\LegacyPaymentGateways\Actions\RegisterPaymentGatewaySettingsList;
11 use Give\PaymentGateways\Actions\RegisterPaymentGateways;
12 use Give\PaymentGateways\Gateways\PayPalStandard\Webhooks\WebhookRegister;
13 use Give\PaymentGateways\Gateways\Stripe\CheckoutGateway;
14 use Give\PaymentGateways\Gateways\Stripe\Controllers\UpdateStatementDescriptorAjaxRequestController;
15 use Give\PaymentGateways\Gateways\Stripe\Migrations\AddMissingTransactionIdForUncompletedDonations;
16 use Give\PaymentGateways\Gateways\Stripe\Migrations\AddStatementDescriptorToStripeAccounts;
17 use Give\PaymentGateways\Gateways\Stripe\Migrations\RemovePaymentIntentSecretMeta;
18 use Give\PaymentGateways\PayPalCommerce\Banners\GatewaySettingPageBanner;
19 use Give\PaymentGateways\PayPalCommerce\Banners\PayPalStandardToDonationsMigrationGlobalBanner;
20 use Give\PaymentGateways\PayPalCommerce\Migrations\RegisterPayPalDonationsRefreshTokenCronJobByMode;
21 use Give\PaymentGateways\PayPalCommerce\Migrations\RemoveLogWithCardInfo;
22 use Give\ServiceProviders\ServiceProvider as ServiceProviderInterface;
23
24 /**
25 * Class ServiceProvider - PaymentGateways
26 *
27 * The Service Provider for loading the Payment Gateways for Payment Flow 2.0
28 *
29 * @since 2.18.0
30 */
31 class ServiceProvider implements ServiceProviderInterface
32 {
33 /**
34 * @inheritDoc
35 */
36 public function register()
37 {
38 give()->singleton(PaymentGatewayRegister::class);
39 give()->singleton(WebhookRegister::class);
40 give()->alias(PaymentGatewayRegister::class, 'gateways');
41 }
42
43 /**
44 * @inheritDoc
45 */
46 public function boot()
47 {
48 $this->registerMigrations();
49
50 Hooks::addFilter('give_register_gateway', RegisterPaymentGateways::class);
51 Hooks::addFilter('give_payment_gateways', RegisterPaymentGatewaySettingsList::class);
52 Hooks::addFilter(
53 'give_payment_gateways_admin_label',
54 LegacyPaymentGatewayRegisterAdapter::class,
55 'updatePaymentGatewayAdminLabelsWithSupportedFormVersions',
56 10,
57 2
58 );
59
60 Hooks::addAction('template_redirect', GatewayRoute::class);
61 Hooks::addAction(
62 'wp_ajax_edit_stripe_account_statement_descriptor',
63 UpdateStatementDescriptorAjaxRequestController::class
64 );
65
66 /**
67 * Stripe Checkout Redirect Handler
68 */
69 Hooks::addAction('wp_footer', CheckoutGateway::class, 'maybeHandleRedirect', 99999);
70 Hooks::addAction('give_embed_footer', CheckoutGateway::class, 'maybeHandleRedirect', 99999);
71
72 $this->registerPayPalDonationsMigrationBanners();
73 }
74
75 /**
76 * @since 2.33.0 add RemovePaymentIntentSecretMeta migration
77 * @since 2.19.6
78 */
79 private function registerMigrations()
80 {
81 give(MigrationsRegister::class)->addMigrations([
82 AddStatementDescriptorToStripeAccounts::class,
83 AddMissingTransactionIdForUncompletedDonations::class,
84 RemoveLogWithCardInfo::class,
85 RemovePaymentIntentSecretMeta::class,
86 RegisterPayPalDonationsRefreshTokenCronJobByMode::class,
87 ]);
88 }
89
90 /**
91 * This method registers the banners.
92 * @since 2.33.0
93 * @return void
94 */
95 private function registerPayPalDonationsMigrationBanners()
96 {
97 if (! is_admin()) {
98 return;
99 }
100
101 // Banner for the migration from PayPal Standard to PayPal Donations.
102 give(GatewaySettingPageBanner::class)->setupHook();
103 give(PayPalStandardToDonationsMigrationGlobalBanner::class)->setHook();
104 }
105 }
106