PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.24.0
GiveWP – Donation Plugin and Fundraising Platform v2.24.0
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
114 lines
1 <?php
2
3 namespace Give\PaymentGateways\Gateways\TestGateway;
4
5 use Give\Donations\Models\Donation;
6 use Give\Framework\Exceptions\Primitives\Exception;
7 use Give\Framework\PaymentGateways\Commands\GatewayCommand;
8 use Give\Framework\PaymentGateways\Commands\PaymentComplete;
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 = null): 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 = null
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 */
98 public function cancelSubscription(Subscription $subscription)
99 {
100 $subscription->status = SubscriptionStatus::CANCELLED();
101 $subscription->save();
102 }
103
104 /**
105 * @since 2.20.0
106 * @inerhitDoc
107 * @throws Exception
108 */
109 public function refundDonation(Donation $donation)
110 {
111 throw new Exception('Method has not been implemented yet. Please use the legacy method in the meantime.');
112 }
113 }
114