src/Controller/Product/ItemTypeController.php line 39

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Product;
  3. use App\Entity\Main\Product\Item;
  4. use App\Repository\Main\Product\ItemRepository;
  5. use App\Repository\Main\Product\ItemTypeRepository;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Symfony\Component\HttpFoundation\Response;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. class ItemTypeController extends AbstractController
  11. {
  12.      /**
  13.      * @Route({
  14.      *     "en": "/products/{categorySlug}/{itemSlug}",
  15.      *     "tr": "/urunler/{categorySlug}/{itemSlug}"
  16.      * }, name="product_item_type")
  17.      */
  18.     public function index(Request $requestItemRepository $itemRepository$itemSlugItemTypeRepository $itemTypeRepository): Response
  19.     {
  20.         /** @var Item $productItem */
  21.         $productItem $itemRepository->findOneBy([
  22.             'slug' => $itemSlug,
  23.         ]);
  24.         $request->query->set('locale'$request->getLocale());
  25.         $request->query->set('product_item_id'$productItem->getId());
  26.         $request->query->set('status_id'Item::STATUS['ACTIVE']);
  27.         $itemPaginator $itemTypeRepository->findByRequest($request);
  28.         return $this->render('product/item_type/index.html.twig', [
  29.             'itemPaginator' => $itemPaginator,
  30.             'productItem' => $productItem,
  31.         ]);
  32.     }
  33.     /**
  34.      * @Route({
  35.      *     "en": "/product/{categorySlug}/{itemSlug}/{itemTypeSlug}",
  36.      *     "tr": "/urun/{categorySlug}/{itemSlug}/{itemTypeSlug}"
  37.      * }, name="product_item_type_show")
  38.      */
  39.     public function show(ItemTypeRepository $itemTypeRepository$itemTypeSlug): Response
  40.     {
  41.         $itemType $itemTypeRepository->findOneBy([
  42.             'slug' => $itemTypeSlug,
  43.         ]);
  44.         return $this->render('product/item_type/show.html.twig', [
  45.             'itemType' => $itemType,
  46.         ]);
  47.     }
  48. }