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 / Bookable / Category / UpdateCategoryController.php
ameliabooking / src / Application / Controller / Bookable / Category Last commit date
AddCategoryController.php 1 month ago DeleteCategoryController.php 1 month ago GetCategoriesController.php 1 month ago GetCategoryController.php 1 month ago GetCategoryDeleteEffectController.php 1 month ago UpdateCategoriesPositionsController.php 1 month ago UpdateCategoryController.php 1 month ago
UpdateCategoryController.php
62 lines
1 <?php
2
3 namespace AmeliaBooking\Application\Controller\Bookable\Category;
4
5 use AmeliaBooking\Application\Commands\Bookable\Category\UpdateCategoryCommand;
6 use AmeliaBooking\Application\Commands\CommandResult;
7 use AmeliaBooking\Application\Controller\Controller;
8 use AmeliaBooking\Domain\Events\DomainEventBus;
9 use AmeliaVendor\Psr\Http\Message\ServerRequestInterface as Request;
10
11 /**
12 * Class UpdateCategoryController
13 *
14 * @package AmeliaBooking\Application\Controller\Bookable\Category
15 */
16 class UpdateCategoryController extends Controller
17 {
18 /**
19 * Fields for category that can be received from front-end
20 *
21 * @var array
22 */
23 protected $allowedFields = [
24 'status',
25 'name',
26 'position',
27 'translations',
28 'color',
29 'pictureFullPath',
30 'pictureThumbPath',
31 ];
32
33 /**
34 * Instantiates the Update Category command to hand it over to the Command Handler
35 *
36 * @param Request $request
37 * @param $args
38 *
39 * @return UpdateCategoryCommand
40 * @throws \RuntimeException
41 */
42 protected function instantiateCommand(Request $request, $args)
43 {
44 $command = new UpdateCategoryCommand($args);
45 $requestBody = $request->getParsedBody();
46 $this->setCommandFields($command, $requestBody);
47
48 return $command;
49 }
50
51 /**
52 * @param DomainEventBus $eventBus
53 * @param CommandResult $result
54 *
55 * @return void
56 */
57 protected function emitSuccessEvent(DomainEventBus $eventBus, CommandResult $result)
58 {
59 $eventBus->emit('bookable.category.updated', $result);
60 }
61 }
62