src/Controller/Website/Mybiz/Tv/TvApiController.php line 20

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Website\Mybiz\Tv;
  3. use App\Repository\ReplayRepository;
  4. use App\Service\Authorization\MybizRequestAuthorizationChecker;
  5. use App\Service\Authorization\MybizRequestJwtChecker;
  6. use App\Service\Feature\Planning\PlanningDtoProvider;
  7. use App\Service\Feature\Replay\ReplayCategoryDtoBuilder;
  8. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  9. use Symfony\Component\HttpFoundation\Request;
  10. use Symfony\Component\HttpFoundation\Response;
  11. use Symfony\Component\Routing\Annotation\Route;
  12. class TvApiController extends AbstractController
  13. {
  14.     /**
  15.      * @Route("/v1/tv/planning", methods={"GET"}, name="api_tv_planning", options={"expose": "true"})
  16.      */
  17.     public function planning(
  18.         Request                          $request,
  19.         MybizRequestJwtChecker           $mybizRequestJwtChecker,
  20.         MybizRequestAuthorizationChecker $mybizRequestAuthorizationChecker,
  21.         PlanningDtoProvider              $planningDtoProvider
  22.     ): Response
  23.     {
  24.         try {
  25.             $member $mybizRequestJwtChecker->checkJwt($request);
  26.         } catch (\Throwable $e) {
  27.             return $mybizRequestJwtChecker->getUnknownJWTErrorMessage();
  28.         }
  29.         try {
  30.             $planningDto $planningDtoProvider->getPlanningForCurrentWeek($member);
  31.         } catch (\Throwable $e) {
  32.             return $mybizRequestAuthorizationChecker->getParseErrorMessage($e);
  33.         }
  34.         return $this->json($planningDto->toArray());
  35.     }
  36.     /**
  37.      * @Route("/v1/tv/replays", methods={"GET"}, name="api_tv_replays", options={"expose": "true"})
  38.      */
  39.     public function replays(
  40.         Request                $request,
  41.         MybizRequestJwtChecker $mybizRequestJwtChecker,
  42.         ReplayRepository       $replayRepository
  43.     ): Response
  44.     {
  45.         try {
  46.             $mybizRequestJwtChecker->checkJwt($request);
  47.         } catch (\Throwable $e) {
  48.             return $mybizRequestJwtChecker->getUnknownJWTErrorMessage();
  49.         }
  50.         $replays $replayRepository->findReplays();
  51.         $replayCategoriesDtos ReplayCategoryDtoBuilder::buildReplayCategoriesDtos($replays);
  52.         return $this->json($replayCategoriesDtos);
  53.     }
  54. }