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 / Booking / Appointment / UpdateAppointmentNoteController.php
ameliabooking / src / Application / Controller / Booking / Appointment Last commit date
AddAppointmentController.php 1 month ago AddBookingController.php 2 weeks ago ApproveBookingRemotelyController.php 1 month ago CancelBookingController.php 1 month ago CancelBookingRemotelyController.php 1 month ago DeleteAppointmentController.php 1 month ago DeleteBookingController.php 1 month ago DeleteBookingRemotelyController.php 1 month ago GetAppointmentBookingsController.php 1 month ago GetAppointmentController.php 1 month ago GetAppointmentsController.php 1 month ago GetIcsController.php 1 month ago GetTimeSlotsController.php 1 month ago ReassignBookingController.php 1 month ago RejectBookingRemotelyController.php 1 month ago SuccessfulBookingController.php 1 month ago UpdateAppointmentController.php 1 month ago UpdateAppointmentNoteController.php 1 month ago UpdateAppointmentStatusController.php 1 month ago UpdateAppointmentTimeController.php 1 month ago UpdateBookingStatusController.php 1 month ago
UpdateAppointmentNoteController.php
66 lines
1 <?php
2
3 namespace AmeliaBooking\Application\Controller\Booking\Appointment;
4
5 use AmeliaBooking\Application\Commands\Booking\Appointment\UpdateAppointmentNoteCommand;
6 use AmeliaBooking\Application\Commands\CommandResult;
7 use AmeliaBooking\Application\Controller\Controller;
8 use AmeliaBooking\Domain\Events\DomainEventBus;
9 use RuntimeException;
10 use AmeliaVendor\Psr\Http\Message\ServerRequestInterface as Request;
11
12 /**
13 * Class UpdateAppointmentNoteController
14 *
15 * @package AmeliaBooking\Application\Controller\Booking\Appointment
16 */
17 class UpdateAppointmentNoteController extends Controller
18 {
19 /**
20 * Fields allowed from the front-end for this endpoint
21 *
22 * @var array
23 */
24 public $allowedFields = [
25 'id',
26 'internalNotes',
27 ];
28
29 /**
30 * @param Request $request
31 * @param $args
32 *
33 * @return UpdateAppointmentNoteCommand
34 * @throws RuntimeException
35 */
36 protected function instantiateCommand(Request $request, $args)
37 {
38 $command = new UpdateAppointmentNoteCommand($args);
39
40 $requestBody = $request->getParsedBody();
41 $this->setCommandFields($command, $requestBody);
42 $command->setToken($request);
43
44 $params = (array)$request->getQueryParams();
45
46 if (isset($params['source'])) {
47 $command->setPage($params['source']);
48 }
49
50 return $command;
51 }
52
53 /**
54 * @param DomainEventBus $eventBus
55 * @param CommandResult $result
56 *
57 * @return void
58 */
59 protected function emitSuccessEvent(DomainEventBus $eventBus, CommandResult $result)
60 {
61 if ($result->getResult() === CommandResult::RESULT_SUCCESS) {
62 $eventBus->emit('AppointmentEdited', $result);
63 }
64 }
65 }
66