src/Controller/HomeController.php line 20

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\Main\Product\Product;
  4. use App\Repository\Main\BlogRepository;
  5. use App\Repository\Main\Product\ProductRepository;
  6. use App\Repository\Main\Slider\ItemRepository;
  7. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  8. use Symfony\Component\HttpFoundation\Request;
  9. use Symfony\Component\HttpFoundation\Response;
  10. use Symfony\Component\Routing\Annotation\Route;
  11. use App\Entity\Main\Slider\Slider;
  12. class HomeController extends AbstractController
  13. {
  14.     /**
  15.      * @Route("/", name="home")
  16.      */
  17.     public function index(Request $requestProductRepository $productRepository,
  18.                           BlogRepository $blogRepositoryItemRepository $sliderItemRepository): Response
  19.     {
  20.         $locale $request->getLocale();
  21.         
  22.         // Slider repository'den doğrudan çekmek yerine
  23.         $sRequest = new Request();
  24.         $sRequest->query->add([
  25.             'order_number' => 'ASC',
  26.             'slider_slug' => $locale == 'en' 'homepage_en' 'homepage',
  27.             'locale' => $locale
  28.         ]);
  29.         $sliderItemPaginator $sliderItemRepository->findByRequest($sRequest);
  30.         $request->query->set('locale'$request->getLocale());
  31.         $request->query->set('sort_order''ASC');
  32.         $request->query->set('sort_by''order_number');
  33.         $request->query->set('status_id'Product::STATUS['ACTIVE']);
  34.         $productPaginator $productRepository->findByRequest($request);
  35.         $request->query->set('sort_by''id');
  36.         $request->query->set('sort_order''DESC');
  37.         $request->query->set('per_page'3);
  38.         $blogPaginator $blogRepository->findByRequest($request);
  39.         return $this->render('home/index.html.twig', [
  40.             'productPaginator' => $productPaginator,
  41.             'blogPaginator' => $blogPaginator,
  42.             'sliderItemPaginator' => $sliderItemPaginator
  43.         ]);
  44.     }
  45. }