PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.19.4
GiveWP – Donation Plugin and Fundraising Platform v3.19.4
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 2 years ago TestGateway.php 2 years ago testGateway.tsx 2 years ago
TestGateway.php
109 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\PaymentGateway;
10 use Give\Framework\Support\Facades\Scripts\ScriptAsset;
11 use Give\Helpers\Form\Utils as FormUtils;
12 use Give\Helpers\Language;
13 use Give\PaymentGateways\Gateways\TestGateway\Views\LegacyFormFieldMarkup;
14
15 /**
16 * A gateway for testing the donation process. No actual payment is processed and only form validation is performed.
17 *
18 * @since 3.0.0 change to Test Donations and manual id to replace legacy gateway
19 * @since 2.18.0
20 */
21 class TestGateway extends PaymentGateway
22 {
23 /**
24 * @inheritDoc
25 */
26 public static function id(): string
27 {
28 return 'manual';
29 }
30
31 /**
32 * @inheritDoc
33 */
34 public function getId(): string
35 {
36 return self::id();
37 }
38
39 /**
40 * @inheritDoc
41 */
42 public function getName(): string
43 {
44 return __('Test Donation', 'give');
45 }
46
47 /**
48 * @since 2.32.0 updated to enqueue script
49 * @since 2.30.0
50 */
51 public function enqueueScript(int $formId)
52 {
53 $scriptAsset = ScriptAsset::get(GIVE_PLUGIN_DIR . 'build/testGateway.asset.php');
54
55 wp_enqueue_script(
56 $this::id(),
57 GIVE_PLUGIN_URL . 'build/testGateway.js',
58 $scriptAsset['dependencies'],
59 $scriptAsset['version'],
60 true
61 );
62
63 Language::setScriptTranslations($this::id());
64 }
65
66 /**
67 * @inheritDoc
68 */
69 public function getPaymentMethodLabel(): string
70 {
71 return __('Test Donation', 'give');
72 }
73
74 /**
75 * @since 2.18.0
76 */
77 public function getLegacyFormFieldMarkup(int $formId, array $args): string
78 {
79 if (FormUtils::isLegacyForm($formId)) {
80 return '';
81 }
82
83 /** @var LegacyFormFieldMarkup $legacyFormFieldMarkup */
84 $legacyFormFieldMarkup = give(LegacyFormFieldMarkup::class);
85
86 return $legacyFormFieldMarkup();
87 }
88
89 /**
90 * @inheritDoc
91 */
92 public function createPayment(Donation $donation, $gatewayData): GatewayCommand
93 {
94 $intent = $gatewayData['testGatewayIntent'] ?? 'test-gateway-intent';
95
96 return new PaymentComplete("test-gateway-transaction-id-{$intent}-$donation->id");
97 }
98
99 /**
100 * @since 2.29.0 Return PaymentRefunded instead of a bool value
101 * @since 2.20.0
102 * @inerhitDoc
103 */
104 public function refundDonation(Donation $donation): PaymentRefunded
105 {
106 return new PaymentRefunded();
107 }
108 }
109