PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / trunk
GiveWP – Donation Plugin and Fundraising Platform vtrunk
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 / DonationForms / DataTransferObjects / DonateRouteData.php
give / src / DonationForms / DataTransferObjects Last commit date
AuthenticationData.php 2 years ago DonateControllerData.php 1 year ago DonateFormRouteData.php 1 week ago DonateRouteData.php 2 years ago DonationConfirmationReceiptViewRouteData.php 1 year ago DonationFormGoalData.php 10 months ago DonationFormPreviewRouteData.php 1 year ago DonationFormQueryData.php 2 years ago DonationFormViewRouteData.php 1 year ago LegacyPurchaseFormData.php 2 years ago UserData.php 2 years ago ValidationRouteData.php 1 week ago
DonateRouteData.php
70 lines
1 <?php
2
3 namespace Give\DonationForms\DataTransferObjects;
4
5 use Give\DonationForms\Routes\DonateRouteSignature;
6 use Give\Framework\PaymentGateways\Log\PaymentGatewayLog;
7
8 /**
9 * @since 3.0.0
10 */
11 class DonateRouteData
12 {
13 /**
14 * @var string
15 */
16 public $routeSignature;
17 /**
18 * @var string
19 */
20 public $routeSignatureId;
21 /**
22 * @var string
23 */
24 public $routeSignatureExpiration;
25
26 /**
27 * Convert data from request into DTO
28 *
29 * @since 3.0.0
30 */
31 public static function fromRequest(array $request): self
32 {
33 $self = new self();
34
35 $self->routeSignature = $request['givewp-route-signature'];
36 $self->routeSignatureId = $request['givewp-route-signature-id'];
37 $self->routeSignatureExpiration = $request['givewp-route-signature-expiration'];
38
39 return $self;
40 }
41
42 /**
43 * @since 3.0.0
44 *
45 * @return void
46 */
47 public function validateSignature()
48 {
49 $signature = new DonateRouteSignature(
50 $this->routeSignatureId,
51 $this->routeSignatureExpiration
52 );
53
54 if (!$signature->isValid($this->routeSignature)) {
55 PaymentGatewayLog::error(
56 'Invalid Secure Route',
57 [
58 'routeSignature' => $this->routeSignature,
59 'signature' => $signature,
60 'signatureString' => $signature->toString(),
61 'signatureHash' => $signature->toHash(),
62 'signatureExpiration' => $signature->expiration,
63 ]
64 );
65
66 wp_die('Forbidden', 403);
67 }
68 }
69 }
70