PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.19.7
GiveWP – Donation Plugin and Fundraising Platform v2.19.7
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 / Donations / DataTransferObjects / DonationQueryData.php
give / src / Donations / DataTransferObjects Last commit date
DonationQueryData.php 4 years ago
DonationQueryData.php
168 lines
1 <?php
2
3 namespace Give\Donations\DataTransferObjects;
4
5 use DateTime;
6 use Give\Donations\Models\Donation;
7 use Give\Donations\Properties\BillingAddress;
8 use Give\Donations\ValueObjects\DonationMetaKeys;
9 use Give\Donations\ValueObjects\DonationMode;
10 use Give\Donations\ValueObjects\DonationStatus;
11 use Give\Framework\Support\Facades\DateTime\Temporal;
12
13 /**
14 * Class DonationData
15 *
16 * @since 2.19.6
17 */
18 class DonationQueryData
19 {
20 /**
21 * @var int
22 */
23 public $amount;
24 /**
25 * @var string
26 */
27 public $currency;
28 /**
29 * @var int
30 */
31 public $donorId;
32 /**
33 * @var string
34 */
35 public $firstName;
36 /**
37 * @var string
38 */
39 public $lastName;
40 /**
41 * @var string
42 */
43 public $email;
44 /**
45 * @var int
46 */
47 public $id;
48 /**
49 * @var DonationStatus
50 */
51 public $status;
52 /**
53 * @var int
54 */
55 public $parentId;
56 /**
57 * @var int
58 */
59 public $subscriptionId;
60 /**
61 * @var DateTime
62 */
63 public $updatedAt;
64 /**
65 * @var DateTime
66 */
67 public $createdAt;
68 /**
69 * @var string
70 */
71 public $gateway;
72 /**
73 * @var DonationMode
74 */
75 public $mode;
76 /**
77 * @var int
78 */
79 public $formId;
80 /**
81 * @var BillingAddress
82 */
83 public $billingAddress;
84 /**
85 * @var string
86 */
87 public $formTitle;
88 /**
89 * @var string
90 */
91 public $purchaseKey;
92 /**
93 * @var string
94 */
95 public $donorIp;
96 /**
97 * @var bool
98 */
99 public $anonymous;
100 /**
101 * @var int
102 */
103 public $levelId;
104 /**
105 * @var string
106 */
107 public $gatewayTransactionId;
108
109 /**
110 * Convert data from object to Donation
111 *
112 * @param object $donationQueryObject
113 *
114 * @since 2.19.6
115 *
116 * @return self
117 */
118 public static function fromObject($donationQueryObject)
119 {
120 $self = new static();
121
122 $self->id = (int)$donationQueryObject->id;
123 $self->formId = (int)$donationQueryObject->{DonationMetaKeys::FORM_ID()->getKeyAsCamelCase()};
124 $self->formTitle = $donationQueryObject->{DonationMetaKeys::FORM_TITLE()->getKeyAsCamelCase()};
125 $self->amount = (int)$donationQueryObject->{DonationMetaKeys::AMOUNT()->getKeyAsCamelCase()};
126 $self->currency = $donationQueryObject->{DonationMetaKeys::CURRENCY()->getKeyAsCamelCase()};
127 $self->donorId = (int)$donationQueryObject->{DonationMetaKeys::DONOR_ID()->getKeyAsCamelCase()};
128 $self->firstName = $donationQueryObject->{DonationMetaKeys::FIRST_NAME()->getKeyAsCamelCase()};
129 $self->lastName = $donationQueryObject->{DonationMetaKeys::LAST_NAME()->getKeyAsCamelCase()};
130 $self->email = $donationQueryObject->{DonationMetaKeys::EMAIL()->getKeyAsCamelCase()};
131 $self->gateway = $donationQueryObject->{DonationMetaKeys::GATEWAY()->getKeyAsCamelCase()};
132 $self->createdAt = Temporal::toDateTime($donationQueryObject->createdAt);
133 $self->updatedAt = Temporal::toDateTime($donationQueryObject->updatedAt);
134 $self->status = new DonationStatus($donationQueryObject->status);
135 $self->parentId = (int)$donationQueryObject->parentId;
136 $self->subscriptionId = (int)$donationQueryObject->{DonationMetaKeys::SUBSCRIPTION_ID()->getKeyAsCamelCase()};
137 $self->mode = new DonationMode($donationQueryObject->{DonationMetaKeys::MODE()->getKeyAsCamelCase()});
138 $self->billingAddress = BillingAddress::fromArray([
139 'country' => $donationQueryObject->{DonationMetaKeys::BILLING_COUNTRY()->getKeyAsCamelCase()},
140 'city' => $donationQueryObject->{DonationMetaKeys::BILLING_CITY()->getKeyAsCamelCase()},
141 'state' => $donationQueryObject->{DonationMetaKeys::BILLING_STATE()->getKeyAsCamelCase()},
142 'zip' => $donationQueryObject->{DonationMetaKeys::BILLING_ZIP()->getKeyAsCamelCase()},
143 'address1' => $donationQueryObject->{DonationMetaKeys::BILLING_ADDRESS1()->getKeyAsCamelCase()},
144 'address2' => $donationQueryObject->{DonationMetaKeys::BILLING_ADDRESS2()->getKeyAsCamelCase()},
145 ]);
146 $self->purchaseKey = $donationQueryObject->{DonationMetaKeys::PURCHASE_KEY()->getKeyAsCamelCase()};
147 $self->donorIp = $donationQueryObject->{DonationMetaKeys::DONOR_IP()->getKeyAsCamelCase()};
148 $self->anonymous = (bool)$donationQueryObject->{DonationMetaKeys::ANONYMOUS()->getKeyAsCamelCase()};
149 $self->levelId = (int)$donationQueryObject->{DonationMetaKeys::LEVEL_ID()->getKeyAsCamelCase()};
150 $self->gatewayTransactionId = $donationQueryObject->{DonationMetaKeys::GATEWAY_TRANSACTION_ID(
151 )->getKeyAsCamelCase()};
152
153 return $self;
154 }
155
156 /**
157 * Convert DTO to Donation
158 *
159 * @return Donation
160 */
161 public function toDonation()
162 {
163 $attributes = get_object_vars($this);
164
165 return new Donation($attributes);
166 }
167 }
168