PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / trunk
Booking for Appointments and Events Calendar – Amelia vtrunk
2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Application / Controller / Mobile / Events / ScanEventTicketMobileController.php
ameliabooking / src / Application / Controller / Mobile / Events Last commit date
GetEventMobileController.php 2 weeks ago GetEventsMobileController.php 2 weeks ago ScanEventTicketMobileController.php 2 weeks ago
ScanEventTicketMobileController.php
34 lines
1 <?php
2
3 namespace AmeliaBooking\Application\Controller\Mobile\Events;
4
5 use AmeliaBooking\Application\Commands\Mobile\Events\ScanEventTicketCommand;
6 use AmeliaBooking\Application\Controller\Mobile\MobileV1Controller;
7 use AmeliaVendor\Psr\Http\Message\ServerRequestInterface as Request;
8
9 /**
10 * POST /mobile/v1/events/scan
11 *
12 * Validates and checks in an event ticket by its QR manual code.
13 * Requires: Authorization: Bearer <provider-jwt>
14 * Body: { "ticketManualCode": string }
15 *
16 * scannedAt is generated server-side; the client does not send it.
17 */
18 class ScanEventTicketMobileController extends MobileV1Controller
19 {
20 public $allowedFields = ['ticketManualCode'];
21
22 protected function instantiateCommand(Request $request, $args)
23 {
24 $command = new ScanEventTicketCommand($args);
25
26 $requestBody = $request->getParsedBody();
27 $this->setCommandFields($command, $requestBody);
28 $command->setToken($request);
29 $this->forceCabinetContext($command);
30
31 return $command;
32 }
33 }
34