PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.21.0
GiveWP – Donation Plugin and Fundraising Platform v3.21.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 / Session / SessionDonation / SessionObjects / FormEntry.php
give / src / Session / SessionDonation / SessionObjects Last commit date
Donation.php 1 year ago FormEntry.php 1 year ago
FormEntry.php
228 lines
1 <?php
2
3 namespace Give\Session\SessionDonation\SessionObjects;
4
5 use Give\Framework\Exceptions\Primitives\InvalidArgumentException;
6 use Give\Helpers\ArrayDataSet;
7 use Give\Session\Objects;
8 use Give\ValueObjects\CardInfo;
9 use Give\ValueObjects\DonorInfo;
10
11 /**
12 * Class FormEntry
13 *
14 * This class use to represent donation form entries as object.
15 *
16 * @package Give\Session\SessionDonation\SessionObjects
17 */
18 class FormEntry implements Objects
19 {
20 /**
21 * Form Id.
22 *
23 * @var string
24 */
25 public $formId;
26
27 /**
28 * Form Title.
29 *
30 * @var string
31 */
32 public $formTitle;
33
34 /**
35 * Page url on which donation page exist.
36 *
37 * @var string
38 */
39 public $currentUrl;
40
41 /**
42 * Donation level id.
43 *
44 * @var string
45 */
46 public $priceId;
47
48 /**
49 * Donation amount
50 *
51 * @var string
52 */
53 public $totalAmount;
54
55 /**
56 * First name
57 *
58 * @var string
59 */
60 public $firstName;
61
62 /**
63 * Last name.
64 *
65 * @var string
66 */
67 public $lastName;
68
69 /**
70 * Company name.
71 *
72 * @var string
73 */
74 public $companyName;
75
76 /**
77 * Donor email
78 *
79 * @var string
80 */
81 public $donorEmail;
82
83 /**
84 * WP user id.
85 *
86 * @var string
87 */
88 public $wpUserId;
89
90 /**
91 * Payment gateway.
92 *
93 * @var string
94 */
95 public $paymentGateway;
96
97 /**
98 * Donation-related session objects.
99 *
100 * @since 3.18.0
101 * @var FormEntry
102 */
103 public $formEntry;
104
105 /**
106 * Donor information.
107 *
108 * @since 3.18.0
109 * @var DonorInfo
110 */
111 public $donorInfo;
112
113 /**
114 * Card information.
115 *
116 * @since 3.18.0
117 * @var CardInfo
118 */
119 public $cardInfo;
120
121 /**
122 * Honeypot value to detect spam submissions.
123 *
124 * @var string|null
125 */
126 public $honeypot;
127
128 /**
129 * Form ID prefix.
130 *
131 * @var string|null
132 */
133 public $formIdPrefix;
134
135 /**
136 * Form URL.
137 *
138 * @var string|null
139 */
140 public $formUrl;
141
142 /**
143 * Minimum donation amount.
144 *
145 * @var float|null
146 */
147 public $formMinimum;
148
149 /**
150 * Maximum donation amount.
151 *
152 * @var float|null
153 */
154 public $formMaximum;
155
156 /**
157 * Form hash.
158 *
159 * @var string|null
160 */
161 public $formHash;
162
163 /**
164 * Payment mode.
165 *
166 * @var string|null
167 */
168 public $paymentMode;
169
170 /**
171 * Stripe Payment Method.
172 *
173 * @var string|null
174 */
175 public $stripePaymentMethod;
176 /*
177
178 /**
179 * Constant Contact signup status.
180 *
181 * @var bool|null
182 */
183 public $constantContactSignup;
184
185 /**
186 * Action property.
187 *
188 * @var string|null
189 */
190 public $action;
191
192 /**
193 * Take array and return object.
194 *
195 * @param $array
196 *
197 * @return FormEntry
198 */
199 public static function fromArray($array)
200 {
201 $renameTo = [
202 'amount' => 'totalAmount',
203 'first' => 'firstName',
204 'last' => 'lastName',
205 'email' => 'donorEmail',
206 'userId' => 'wpUserId',
207 'gateway' => 'paymentGateway',
208 ];
209
210 $array = ArrayDataSet::renameKeys($array, $renameTo);
211 $expectedKeys = ['formId', 'totalAmount', 'firstName', 'email', 'gateway'];
212
213 if ( ! ArrayDataSet::hasRequiredKeys($array, $expectedKeys)) {
214 throw new InvalidArgumentException(
215 'Invalid FormEntries object, must have the exact following keys: ' . implode(', ', $expectedKeys)
216 );
217 }
218
219 $formEntries = new self();
220
221 foreach ($array as $key => $value) {
222 $formEntries->{$key} = $value;
223 }
224
225 return $formEntries;
226 }
227 }
228