src/Bidcoz/Bundle/FrontendBundle/Controller/Auction/AuctionController.php line 25

Open in your IDE?
  1. <?php
  2. namespace Bidcoz\Bundle\FrontendBundle\Controller\Auction;
  3. use Bidcoz\Bundle\CoreBundle\Controller\CoreController;
  4. use Bidcoz\Bundle\CoreBundle\Entity\Auction\Auction;
  5. use Bidcoz\Bundle\CoreBundle\Entity\Campaign;
  6. use Bidcoz\Bundle\CoreBundle\Entity\Organization;
  7. use Sensio\Bundle\FrameworkExtraBundle\Configuration\IsGranted;
  8. use Symfony\Component\HttpFoundation\Request;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. /**
  11.  * @Route("/{orgSlug}/{campaignSlug}/auction")
  12.  * @IsGranted("VIEW", subject="organization")
  13.  * @IsGranted("FRONT_END", subject="campaign")
  14.  */
  15. class AuctionController extends CoreController
  16. {
  17.     use ItemCatalogQueryTrait;
  18.     /**
  19.      * @Route("/list", name="auction_catalog")
  20.      */
  21.     public function catalogAction(Request $requestOrganization $organizationCampaign $campaignAuction $auction)
  22.     {
  23.         $qb $this->getRepository('Auction\Item')->getAuctionQueryBuilder($auctiontruefalse);
  24.         $filterForm $this->getItemFilterForm($auction);
  25.         $hasFilter  $this->applyFilters($request$filterForm$qb);
  26.         $orderForm $this->getItemOrderForm();
  27.         $hasOrder  $this->applyOrder($request$orderForm$qbtrue);
  28.         $activeTab $this->applyTabFilter($request$qb);
  29.         $items $this->getPagination($qb);
  30.         return $this->render('@BidcozFrontend/Auction/catalog.html.twig', [
  31.             'type'         => 'auction',
  32.             'title'        => 'Auction Catalog',
  33.             'organization' => $organization,
  34.             'campaign'     => $campaign,
  35.             'auction'      => $auction,
  36.             'filterForm'   => $filterForm->createView(),
  37.             'orderForm'    => $orderForm->createView(),
  38.             'items'        => $items,
  39.             'activeTab'    => $activeTab,
  40.             'hasFilter'    => $hasFilter || $hasOrder || 'all' !== $activeTab,
  41.             'requireCC'    => !$this->isGranted('WITH_CC'$campaign),
  42.             // Carried onto every item link so the item page's "More Items"
  43.             // carousel can mirror this catalog's sort and filters (CAU-356).
  44.             'carryParams'  => $this->getCatalogCarryParams($request$filterForm$orderForm),
  45.         ]);
  46.     }
  47. }