File manager - Edit - /home/verseaumee/blueversion/wp-content/plugins/give/src/DonationForms/DataTransferObjects/LegacyPurchaseFormData.php
Back
<?php namespace Give\DonationForms\DataTransferObjects; use Give\Donations\Models\Donation; use Give\Donors\Models\Donor; /** * This DTO extracts the complexity of supplying an array for use in give_set_purchase_session() * * @since 3.0.0 */ class LegacyPurchaseFormData { /** * @var Donation */ public $donation; /** * @var Donor */ public $donor; /** * @since 3.0.0 * * @param array{donation: Donation, donor: Donation} $array * @return LegacyPurchaseFormData */ public static function fromArray(array $array): self { $self = new self(); $self->donation = $array['donation']; $self->donor = $array['donor']; return $self; } /** * Returns shape needed for give_set_purchase_session() * * @since 3.0.0 */ public function toPurchaseData(): array { $address = [ 'line1' => $this->donation->billingAddress->address1, 'line2' => $this->donation->billingAddress->address2, 'city' => $this->donation->billingAddress->city, 'state' => $this->donation->billingAddress->state, 'country' => $this->donation->billingAddress->country, 'zip' => $this->donation->billingAddress->zip ]; return [ 'donation_id' => $this->donation->id, 'price' => $this->donation->amount->formatToDecimal(), 'purchase_key' => $this->donation->purchaseKey, 'user_email' => $this->donor->email, 'date' => $this->donation->createdAt->format('Y-m-d H:i:s'), 'user_info' => [ 'id' => $this->donor->id, 'firstName' => $this->donor->firstName, 'lastName' => $this->donor->lastName, 'title' => $this->donor->prefix, 'email' => $this->donor->email, 'address' => $address ], 'post_data' => [ 'amount' => $this->donation->amount->formatToDecimal(), 'first' => $this->donation->firstName, 'last' => $this->donation->lastName, 'email' => $this->donation->email, 'userId' => get_current_user_id(), 'gateway' => $this->donation->gatewayId, ], 'gateway' => $this->donation->gatewayId, 'card_info' => [ 'address' => $address ], ]; } }
| ver. 1.4 |
Github
|
.
| PHP 8.5.7 | Generation time: 0 |
proxy
|
phpinfo
|
Settings