src/Network/Controller/NetworkAuctionController.php line 30

Open in your IDE?
  1. <?php
  2. namespace App\Network\Controller;
  3. use App\Profile\Service\LoadMoreService;
  4. use Carbon\Carbon;
  5. use Pimcore\Controller\FrontendController;
  6. use Pimcore\Model\DataObject\Auction;
  7. use Pimcore\Model\DataObject\Auctionlot;
  8. use Pimcore\Model\DataObject\Banner;
  9. use Pimcore\Model\DataObject\News;
  10. use Symfony\Component\HttpFoundation\Request;
  11. use Symfony\Component\HttpFoundation\Response;
  12. use Symfony\Component\Routing\Annotation\Route;
  13. #[Route([
  14.   'name' => 'network_auction_',
  15.   'localizedPaths' => [
  16.     'en' => '/{_locale}/network/auction',
  17.     'de' => '/{_locale}/netzwerk/auktion',
  18.     'fr' => '/{_locale}/reseau/encheres',
  19.   ],
  20. ])]
  21. class NetworkAuctionController extends FrontendController
  22. {
  23.   #[Route('/{id}/{slug}'name'detail')]
  24.   public function detail(Request $request$id$slug ''): Response
  25.   {
  26.     $auction Auction::getById($id);
  27.     $auctionHouse $auction->getAuctionhouse();
  28.     $totalAuctionlots Auctionlot::getList()
  29.     ->filterByAuction($auction)
  30.     ->getTotalCount();
  31.     $banner Banner::getList()->setCondition('auctionhouse like :auctionhouseId', ['auctionhouseId' => '%,'.$auctionHouse->getId().',%']);
  32.     return $this->renderForm('network/auction/detail.html.twig', [
  33.       'banner' => $banner,
  34.       'auction' => $auction,
  35.       'totalAuctionlots' => $totalAuctionlots,
  36.       'user' => $this->getUser(),
  37.       'now' => new Carbon(),
  38.     ]);
  39.   }
  40.   #[Route('/{id}/{slug}/news'name'news_frame')]
  41.   public function news(Request $request$idLoadMoreService $loadMoreService$slug ''): Response
  42.   {
  43.     $news News::getList();
  44.     $news->addConditionParam('auctions LIKE :id', ['id' => '%'.$id.'%']);
  45.     $news->setOrderKey('date');
  46.     $news->setOrder('desc');
  47.     $context $loadMoreService->generate(
  48.       $request,
  49.       'auction-news-list',
  50.       $news,
  51.       'network/auction/sections/auction_news_frame.html.twig',
  52.       [
  53.         // 'profile' => $profile,
  54.         'news' => $news,
  55.       ], 055
  56.     );
  57.     return $this->renderForm(...$context);
  58.   }
  59. }