PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.19.2
GiveWP – Donation Plugin and Fundraising Platform v3.19.2
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 2 years ago DataTransferObjects 1 year ago Exceptions 4 years ago Gateways 1 year ago Migrations 2 years ago PayPalCommerce 1 year ago Stripe 2 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
101 lines
1 <?php
2
3 namespace Give\PaymentGateways;
4
5 use Give\Framework\Migrations\MigrationsRegister;
6 use Give\Framework\PaymentGateways\PaymentGatewayRegister;
7 use Give\Framework\PaymentGateways\Routes\GatewayRoute;
8 use Give\Helpers\Hooks;
9 use Give\LegacyPaymentGateways\Actions\RegisterPaymentGatewaySettingsList;
10 use Give\PaymentGateways\Actions\RegisterPaymentGateways;
11 use Give\PaymentGateways\Gateways\PayPalStandard\Webhooks\WebhookRegister;
12 use Give\PaymentGateways\Gateways\Stripe\CheckoutGateway;
13 use Give\PaymentGateways\Gateways\Stripe\Controllers\UpdateStatementDescriptorAjaxRequestController;
14 use Give\PaymentGateways\Gateways\Stripe\Migrations\AddMissingTransactionIdForUncompletedDonations;
15 use Give\PaymentGateways\Gateways\Stripe\Migrations\AddStatementDescriptorToStripeAccounts;
16 use Give\PaymentGateways\Gateways\Stripe\Migrations\RemovePaymentIntentSecretMeta;
17 use Give\PaymentGateways\Migrations\CopyV2GatewaysSettingsToV3;
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
53 Hooks::addAction('template_redirect', GatewayRoute::class);
54 Hooks::addAction(
55 'wp_ajax_edit_stripe_account_statement_descriptor',
56 UpdateStatementDescriptorAjaxRequestController::class
57 );
58
59 /**
60 * Stripe Checkout Redirect Handler
61 */
62 Hooks::addAction('wp_footer', CheckoutGateway::class, 'maybeHandleRedirect', 99999);
63 Hooks::addAction('give_embed_footer', CheckoutGateway::class, 'maybeHandleRedirect', 99999);
64
65 $this->registerPayPalDonationsMigrationBanners();
66 }
67
68 /**
69 * @since 3.0.0 add CopyV2GatewaysSettingsToV3 migration
70 * @since 2.33.0 add RemovePaymentIntentSecretMeta migration
71 * @since 2.19.6
72 */
73 private function registerMigrations()
74 {
75 give(MigrationsRegister::class)->addMigrations([
76 AddStatementDescriptorToStripeAccounts::class,
77 AddMissingTransactionIdForUncompletedDonations::class,
78 RemoveLogWithCardInfo::class,
79 RemovePaymentIntentSecretMeta::class,
80 RegisterPayPalDonationsRefreshTokenCronJobByMode::class,
81 CopyV2GatewaysSettingsToV3::class,
82 ]);
83 }
84
85 /**
86 * This method registers the banners.
87 * @since 2.33.0
88 * @return void
89 */
90 private function registerPayPalDonationsMigrationBanners()
91 {
92 if (! is_admin()) {
93 return;
94 }
95
96 // Banner for the migration from PayPal Standard to PayPal Donations.
97 give(GatewaySettingPageBanner::class)->setupHook();
98 give(PayPalStandardToDonationsMigrationGlobalBanner::class)->setHook();
99 }
100 }
101