PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.23.2
GiveWP – Donation Plugin and Fundraising Platform v2.23.2
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 4 years ago FormEntry.php 4 years ago
FormEntry.php
131 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
9 /**
10 * Class FormEntry
11 *
12 * This class use to represent donation form entries as object.
13 *
14 * @package Give\Session\SessionDonation\SessionObjects
15 */
16 class FormEntry implements Objects
17 {
18 /**
19 * Form Id.
20 *
21 * @var string
22 */
23 public $formId;
24
25 /**
26 * Form Title.
27 *
28 * @var string
29 */
30 public $formTitle;
31
32 /**
33 * Page url on which donation page exist.
34 *
35 * @var string
36 */
37 public $currentUrl;
38
39 /**
40 * Donation level id.
41 *
42 * @var string
43 */
44 public $priceId;
45
46 /**
47 * Donation amount
48 *
49 * @var string
50 */
51 public $totalAmount;
52
53 /**
54 * First name
55 *
56 * @var string
57 */
58 public $firstName;
59
60 /**
61 * Last name.
62 *
63 * @var string
64 */
65 public $lastName;
66
67 /**
68 * Company name.
69 *
70 * @var string
71 */
72 public $companyName;
73
74 /**
75 * Donor email
76 *
77 * @var string
78 */
79 public $donorEmail;
80
81 /**
82 * WP user id.
83 *
84 * @var string
85 */
86 public $wpUserId;
87
88 /**
89 * Payment gateway.
90 *
91 * @var string
92 */
93 public $paymentGateway;
94
95 /**
96 * Take array and return object.
97 *
98 * @param $array
99 *
100 * @return FormEntry
101 */
102 public static function fromArray($array)
103 {
104 $renameTo = [
105 'amount' => 'totalAmount',
106 'first' => 'firstName',
107 'last' => 'lastName',
108 'email' => 'donorEmail',
109 'userId' => 'wpUserId',
110 'gateway' => 'paymentGateway',
111 ];
112
113 $array = ArrayDataSet::renameKeys($array, $renameTo);
114 $expectedKeys = ['formId', 'totalAmount', 'firstName', 'email', 'gateway'];
115
116 if ( ! ArrayDataSet::hasRequiredKeys($array, $expectedKeys)) {
117 throw new InvalidArgumentException(
118 'Invalid FormEntries object, must have the exact following keys: ' . implode(', ', $expectedKeys)
119 );
120 }
121
122 $formEntries = new self();
123
124 foreach ($array as $key => $value) {
125 $formEntries->{$key} = $value;
126 }
127
128 return $formEntries;
129 }
130 }
131