Loading src/Action/Functions.php +0 −1 Original line number Diff line number Diff line Loading @@ -5,7 +5,6 @@ declare(strict_types=1); namespace App\Action; use Exception; use RuntimeException; use DateTimeImmutable; use DateTime; use DatePeriod; Loading src/Controller/HomeController.php +10 −22 Original line number Diff line number Diff line Loading @@ -3,19 +3,19 @@ namespace App\Controller; use App\Action\Functions; use App\Service\FileUploader; use App\Requests\{ SortPriceRequest, SearchRequest, UniqElementsRequest, MenuRequest, HowDaysToNyRequest, CountFriday13Request, DiffDaysRequest }; use DateTimeImmutable; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\JsonResponse; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Attribute\Route; class HomeController extends AbstractController Loading Loading @@ -52,34 +52,22 @@ class HomeController extends AbstractController return $this->json($result); } #[Route( '/howDaysToNy/{day}/{month}/{year}', name: 'howDaysToNy', requirements: [ 'day' => '(?<!-)(?<!\d)\d+', 'month' => '(?<!-)(?<!\d)\d+', 'year' => '(?<!-)(?<!\d)\d+' ], methods: ['GET'] )] public function howDaysToNy(int $day, int $month, int $year): Response #[Route('/howDaysToNy', name: 'howDaysToNy', methods: ['GET'])] public function howDaysToNy(HowDaysToNyRequest $request): Response { $dateAsString = $year . "-" . $month . "-" . $day; $date = $request->getRequest()->get('date'); try { $result = $this->functions->howDaysToNy(new DateTimeImmutable($dateAsString)); $result = $this->functions->howDaysToNy(new DateTimeImmutable($date)); } catch (\Exception $e) { return new Response($e->getMessage()); } return $this->json(["Days before NY:" => $result]); } #[Route( '/countFriday13/{year}', name: 'countFriday13', requirements: ['year' => '(?<!-)(?<!\d)\d+'], methods: ['GET'])] public function countFriday13(int $year): Response #[Route('/countFriday13', name: 'countFriday13', methods: ['GET'])] public function countFriday13(CountFriday13Request $request): Response { $year = $request->getRequest()->get('year'); $fridays = array(); try { foreach ($this->functions->countFriday13($year) as $date) { Loading @@ -91,7 +79,7 @@ class HomeController extends AbstractController return $this->json($fridays); } #[Route('/diffDays/', name: 'diffDays')] // 01-01-2024 #[Route('/diffDays', name: 'diffDays')] // 01-01-2024 public function diffDays(DiffDaysRequest $request): Response { try { Loading src/Requests/CountFriday13Request.php 0 → 100644 +21 −0 Original line number Diff line number Diff line <?php namespace App\Requests; use Symfony\Component\Validator\Constraints as Assert; class CountFriday13Request extends BaseRequest { #[Assert\Type('int')] #[Assert\Positive] public int $year; protected function populate(): void { foreach ($this->getRequest()->query->all() as $property => $value) { if (property_exists($this, $property)) { $this->{$property} = $value; } } } } No newline at end of file src/Requests/HowDaysToNyRequest.php 0 → 100644 +11 −0 Original line number Diff line number Diff line <?php namespace App\Requests; use Symfony\Component\Validator\Constraints as Assert; class HowDaysToNyRequest extends BaseRequest { #[Assert\Type('date')] public $date; } Loading
src/Action/Functions.php +0 −1 Original line number Diff line number Diff line Loading @@ -5,7 +5,6 @@ declare(strict_types=1); namespace App\Action; use Exception; use RuntimeException; use DateTimeImmutable; use DateTime; use DatePeriod; Loading
src/Controller/HomeController.php +10 −22 Original line number Diff line number Diff line Loading @@ -3,19 +3,19 @@ namespace App\Controller; use App\Action\Functions; use App\Service\FileUploader; use App\Requests\{ SortPriceRequest, SearchRequest, UniqElementsRequest, MenuRequest, HowDaysToNyRequest, CountFriday13Request, DiffDaysRequest }; use DateTimeImmutable; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\JsonResponse; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Attribute\Route; class HomeController extends AbstractController Loading Loading @@ -52,34 +52,22 @@ class HomeController extends AbstractController return $this->json($result); } #[Route( '/howDaysToNy/{day}/{month}/{year}', name: 'howDaysToNy', requirements: [ 'day' => '(?<!-)(?<!\d)\d+', 'month' => '(?<!-)(?<!\d)\d+', 'year' => '(?<!-)(?<!\d)\d+' ], methods: ['GET'] )] public function howDaysToNy(int $day, int $month, int $year): Response #[Route('/howDaysToNy', name: 'howDaysToNy', methods: ['GET'])] public function howDaysToNy(HowDaysToNyRequest $request): Response { $dateAsString = $year . "-" . $month . "-" . $day; $date = $request->getRequest()->get('date'); try { $result = $this->functions->howDaysToNy(new DateTimeImmutable($dateAsString)); $result = $this->functions->howDaysToNy(new DateTimeImmutable($date)); } catch (\Exception $e) { return new Response($e->getMessage()); } return $this->json(["Days before NY:" => $result]); } #[Route( '/countFriday13/{year}', name: 'countFriday13', requirements: ['year' => '(?<!-)(?<!\d)\d+'], methods: ['GET'])] public function countFriday13(int $year): Response #[Route('/countFriday13', name: 'countFriday13', methods: ['GET'])] public function countFriday13(CountFriday13Request $request): Response { $year = $request->getRequest()->get('year'); $fridays = array(); try { foreach ($this->functions->countFriday13($year) as $date) { Loading @@ -91,7 +79,7 @@ class HomeController extends AbstractController return $this->json($fridays); } #[Route('/diffDays/', name: 'diffDays')] // 01-01-2024 #[Route('/diffDays', name: 'diffDays')] // 01-01-2024 public function diffDays(DiffDaysRequest $request): Response { try { Loading
src/Requests/CountFriday13Request.php 0 → 100644 +21 −0 Original line number Diff line number Diff line <?php namespace App\Requests; use Symfony\Component\Validator\Constraints as Assert; class CountFriday13Request extends BaseRequest { #[Assert\Type('int')] #[Assert\Positive] public int $year; protected function populate(): void { foreach ($this->getRequest()->query->all() as $property => $value) { if (property_exists($this, $property)) { $this->{$property} = $value; } } } } No newline at end of file
src/Requests/HowDaysToNyRequest.php 0 → 100644 +11 −0 Original line number Diff line number Diff line <?php namespace App\Requests; use Symfony\Component\Validator\Constraints as Assert; class HowDaysToNyRequest extends BaseRequest { #[Assert\Type('date')] public $date; }