Done !
| Server IP : 46.105.57.169 / Your IP : 216.73.216.67 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/blueversion/wp-content/plugins/give/src/EventTickets/ViewModels/ |
Upload File : |
<?php
namespace Give\EventTickets\ViewModels;
use Give\DonationForms\Models\DonationForm;
use Give\EventTickets\Actions\AttachAttendeeDataToTicketData;
use Give\EventTickets\DataTransferObjects\EventTicketTypeData;
use Give\EventTickets\Models\Event;
use Give\EventTickets\Models\EventTicketType;
/**
* @since 3.6.0
*/
class EventDetails
{
/**
* @since 3.6.0
* @var Event
*/
protected $event;
/**
* @since 3.6.0
*/
public function __construct(Event $event)
{
$this->event = $event;
}
/**
* @since 3.6.0
*/
public function exports(): array
{
$tickets = $this->event->eventTickets()->getAll() ?? [];
return array_merge($this->event->toArray(), [
'ticketTypes' => array_map(function (EventTicketType $ticketType) {
return EventTicketTypeData::make($ticketType)->toArray();
}, $this->event->ticketTypes()->getAll() ?? []),
'forms' => array_map(function (DonationForm $form) {
return ['id' => $form->id, 'title' => $form->title];
}, $this->event->forms()->getAll() ?? []),
'tickets' => array_map(new AttachAttendeeDataToTicketData($tickets), $tickets),
]);
}
}