PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.29.0
GiveWP – Donation Plugin and Fundraising Platform v2.29.0
4.16.5.1 4.16.5 4.16.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 / Gateways / TestGateway / TestGateway.php
give / src / PaymentGateways / Gateways / TestGateway Last commit date
Views 4 years ago TestGateway.php 3 years ago TestGatewayOffsite.php 3 years ago
TestGateway.php
115 lines
1 <?php
2
3 namespace Give\PaymentGateways\Gateways\TestGateway;
4
5 use Give\Donations\Models\Donation;
6 use Give\Framework\PaymentGateways\Commands\GatewayCommand;
7 use Give\Framework\PaymentGateways\Commands\PaymentComplete;
8 use Give\Framework\PaymentGateways\Commands\PaymentRefunded;
9 use Give\Framework\PaymentGateways\Commands\SubscriptionComplete;
10 use Give\Framework\PaymentGateways\PaymentGateway;
11 use Give\Helpers\Form\Utils as FormUtils;
12 use Give\PaymentGateways\Gateways\TestGateway\Views\LegacyFormFieldMarkup;
13 use Give\Subscriptions\Models\Subscription;
14 use Give\Subscriptions\ValueObjects\SubscriptionStatus;
15
16 /**
17 * Class TestGateway
18 * @since 2.18.0
19 */
20 class TestGateway extends PaymentGateway
21 {
22 /**
23 * @inheritDoc
24 */
25 public static function id(): string
26 {
27 return 'test-gateway';
28 }
29
30 /**
31 * @inheritDoc
32 */
33 public function getId(): string
34 {
35 return self::id();
36 }
37
38 /**
39 * @inheritDoc
40 */
41 public function getName(): string
42 {
43 return __('Test Gateway', 'give');
44 }
45
46 /**
47 * @inheritDoc
48 */
49 public function getPaymentMethodLabel(): string
50 {
51 return __('Test Gateway', 'give');
52 }
53
54 /**
55 * @inheritDoc
56 */
57 public function getLegacyFormFieldMarkup(int $formId, array $args): string
58 {
59 if (FormUtils::isLegacyForm($formId)) {
60 return '';
61 }
62
63 /** @var LegacyFormFieldMarkup $legacyFormFieldMarkup */
64 $legacyFormFieldMarkup = give(LegacyFormFieldMarkup::class);
65
66 return $legacyFormFieldMarkup();
67 }
68
69 /**
70 * @inheritDoc
71 */
72 public function createPayment(Donation $donation, $gatewayData): GatewayCommand
73 {
74 return new PaymentComplete("test-gateway-transaction-id-$donation->id");
75 }
76
77 /**
78 * @inheritDoc
79 *
80 * @since 2.23.0
81 */
82 public function createSubscription(
83 Donation $donation,
84 Subscription $subscription,
85 $gatewayData
86 ): GatewayCommand {
87 return new SubscriptionComplete(
88 "test-gateway-transaction-id-$donation->id",
89 "test-gateway-subscription-id-$subscription->id"
90 );
91 }
92
93 /**
94 * @since 2.23.0
95 *
96 * @inheritDoc
97 * @throws \Exception
98 */
99 public function cancelSubscription(Subscription $subscription)
100 {
101 $subscription->status = SubscriptionStatus::CANCELLED();
102 $subscription->save();
103 }
104
105 /**
106 * @since 2.29.0 Return PaymentRefunded instead of a bool value
107 * @since 2.20.0
108 * @inerhitDoc
109 */
110 public function refundDonation(Donation $donation): PaymentRefunded
111 {
112 return new PaymentRefunded();
113 }
114 }
115