src/Controller/DefaultController.php line 226

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use Pimcore\Controller\FrontendController;
  4. use Symfony\Component\HttpFoundation\Request;
  5. use Symfony\Component\HttpFoundation\Response;
  6. use Symfony\Component\HttpFoundation\JsonResponse;
  7. use Pimcore\Model\DataObject;
  8. use Pimcore\Model\DataObject\DemoProduct;
  9. use Pimcore\Model\DataObject\AbstractObject;
  10. use Pimcore\Model\DataObject\Service;
  11. use Pimcore\Model\DataObject\Articles;
  12. use Pimcore\Model\DataObject\Content;
  13. use Pimcore\Model\DataObject\Fieldcollection\Data\TestCollection;
  14. use Pimcore\Model\DataObject\Companies;
  15. use Pimcore\Model\DataObject\About;
  16. use Pimcore\Model\DataObject\ReviewsAndRatings;
  17. use Knp\Component\Pager\PaginatorInterface;
  18. class DefaultController extends FrontendController
  19. {
  20.     /**
  21.      * @param Request $request
  22.      * @return Response
  23.      */
  24.     public function defaultAction(Request $request): Response
  25.     {
  26.         return $this->render('default/default.html.twig');
  27.     }
  28.     
  29.     public function dataObjectAction(Request $request)
  30.     {
  31.         
  32.         // $product=new DemoProduct();
  33.         // $product->setParent(Service::createFolderByPath("/demo/import/product"));
  34.         // $product->setKey("imported-product-3");
  35.         // $product->setPublished(true);
  36.         
  37.         // $product->setName("new data Import Product");
  38.         // $product->setDescription("this is demo data description");
  39.         // $product->setPrice(675);
  40.         // $product->save();
  41.         
  42.         //$test=Articles::getById(933);
  43.         //return ['test'=>$test];
  44.         
  45.         /*
  46.         $articleListing=new Articles\Listing();
  47.         //$articleListing=DataObject\Articles\Listing::getById(933);
  48.         $data=[];
  49.         foreach($articleListing as $article)
  50.         {
  51.             $data[]=[
  52.                 'id'=>$article->getId(),
  53.                 'testInput'=>$article->getTestInput(),
  54.                 'testCheckbox'=>$article->getTestCheckbox(),
  55.                 //'testSelect'=>$article->getTestSelect(),
  56.                 //'testCountry'=>$article->getTestCountry(),
  57.                 //'testInput'=>$article->getTestInput()
  58.                 ];
  59.         }
  60.         */
  61.         
  62.         // $articleListingOne=new DataObject\Fieldcollection\Data\TestCollection();
  63.         // $dataOne=[];
  64.         // foreach($articleListingOne as $articleOne)
  65.         // {
  66.         //     $dataOne[]=[
  67.         //         //'id'=>$articleOne->getId(),
  68.         //         'testSelect'=>$articleOne->getTestSelect(),
  69.         //         'testCountry'=>$articleOne->getTestCountry(),
  70.         //         'testInput'=>$articleOne->getTestInput()
  71.         //         ];   
  72.         // }
  73.         
  74.         // $contentList=new Content\Listing();
  75.         // $data=[];
  76.         // foreach($contentList as $contents)
  77.         // {
  78.         //     $data[]=[
  79.         //         'id'=>$contents->getId(),
  80.         //         'title'=>$contents->getTitle(),
  81.         //         'contentDescription'=>$contents->getContentDescription(),
  82.         //         'contentImages'=>$contents->getContentImages()
  83.         //         ];
  84.         //}
  85.         //return new JsonResponse($data);
  86.         /*
  87.         $productListing=new DemoProduct\Listing();
  88.         $productListing->setCondition('price > ?', [intval($request->get('from-price'))]);
  89.         
  90.         $data=[];
  91.         foreach($productListing as $product)
  92.         {
  93.             $data[]=[
  94.                 'id'=>$product->getId(),
  95.                 'name'=>$product->getName(),
  96.                 'description'=>$product->getDescription(),
  97.                 'price'=>$product->getPrice()
  98.                 ];
  99.         }
  100.         
  101.         return new JsonResponse($data);
  102.         */
  103.         
  104.         //return new Response("\n\ndone");
  105.     }
  106.     
  107.     // public function academyAction(Request $request)
  108.     // {
  109.     //     $companyListing=new Companies\Listing();
  110.     //     $data=[];
  111.     //     foreach($companyListing as $company)
  112.     //     {
  113.     //         $data[]=[
  114.     //             'id'=>$company->getId(),
  115.     //             'businessOwner'=>$company->getBusinessOwner(),
  116.     //             'businessName'=>$company->getBusinessName()
  117.                 
  118.     //             ];
  119.     //     }
  120.         
  121.     //     //return new JsonResponse($data);
  122.         
  123.     //     return $this->render('default/default.html.twig');
  124.     // }
  125.     
  126.     public function homeAction(Request $request)
  127.     {
  128.         $homeCompanyDetails = new Companies\Listing();
  129.         $homeArticleDetails = new Articles\Listing();
  130.         $homeReviewsDetails = new ReviewsAndRatings\Listing();
  131.         //$homeDetails = Companies::getById($request->get('id'));
  132.         
  133.         //$CompaniesDetails = Companies::getById($request->get('id'));
  134.       
  135.         return $this->render('Home/listing.html.twig',[
  136.             'Companies' => $homeCompanyDetails,'Articles'=> $homeArticleDetails,'ReviewsAndRatings'=>$homeReviewsDetails,
  137.             ]);
  138.     }
  139.     public function listingAction(Request $requestPaginatorInterface $paginator)
  140.     {
  141.         $CompaniesList = new Companies\Listing();
  142.       
  143.         return $this->render('Companies/listing.html.twig', [
  144.             'Companies' => $CompaniesList,
  145.             
  146.         ]);
  147.     }
  148.     
  149.     public function companyDetailAction(Request $request)
  150.     {
  151.         //$CompaniesDetails = Companies::getByBusinessName($request->get('Companies'));
  152.         
  153.         
  154.         $CompaniesDetails Companies::getById($request->get('id'));
  155.         
  156.         $ArticlesList = new Articles\Listing();
  157.         $ArticlesList->setCondition("companies like '".$CompaniesDetails->getBusinessName()."'");
  158.         $ArticlesList->load();
  159.         
  160.         $ReviewsList = new ReviewsAndRatings\Listing();
  161.         $ReviewsList->setCondition("companies like '".$CompaniesDetails->getBusinessName()."'");
  162.         $ReviewsList->load();
  163.         
  164.         
  165.         
  166.         
  167.         return $this->render('Companies/detail.html.twig', [
  168.             'Companies' => $CompaniesDetails,'Articles'=> $ArticlesList,'ReviewsAndRatings'=>$ReviewsList,
  169.             ]);
  170.     }
  171.     
  172.     public function listingActionAbout(Request $request)
  173.     {
  174.          $CompaniesAboutDetails Companies::getById($request->get('id'));
  175.         //$CompaniesAboutDetails = new Companies\Listing();
  176.         
  177.         return $this->render('Companies/company_about.html.twig', [
  178.             'Companies' => $CompaniesAboutDetails,
  179.             
  180.         ]);
  181.     }
  182.     
  183.      
  184.     
  185.     public function listingActionArticle(Request $requestPaginatorInterface $paginator)
  186.     {
  187.         // get a list of SimpleService objects and order them by date
  188.         $ArticlesList = new Articles\Listing(["orderKey" => ["date"],
  189.             "order" => "desc"]);
  190.       
  191.         return $this->render('Articles/listing.html.twig', [
  192.             'Articles' => $ArticlesList,
  193.             
  194.             
  195.         ]);
  196.     }
  197.     
  198.     public function articleDetailAction(Request $request)
  199.     {
  200.         //$CompaniesDetails = Companies::getByBusinessName($request->get('Companies'));
  201.         
  202.         $ArticleDetails Articles::getById($request->get('id'));
  203.         
  204.         //$CompaniesDetails = new Companies\Listing();
  205.         $CompaniesDetails Companies::getByBusinessName($ArticleDetails->getCompanies());
  206.         
  207.         //$ArticleDetails = Articles::getById(936);
  208.         
  209.         return $this->render('Articles/detail.html.twig', [
  210.             'Articles' => $ArticleDetails,'Companies' => $CompaniesDetails,
  211.              
  212.             ]);
  213.     }
  214.     
  215.     public function listingActionRatingsReviews(Request $requestPaginatorInterface $paginator)
  216.     {
  217.         // get a list of SimpleService objects and order them by date
  218.         $ReviewsList = new ReviewsAndRatings\Listing();
  219.       
  220.         return $this->render('RatingsReviews/listing.html.twig', [
  221.             'ReviewsAndRatings' => $ReviewsList,
  222.             
  223.         ]);
  224.     }
  225.     
  226.     public function reviewsDetailAction(Request $request)
  227.     {
  228.         //$CompaniesDetails = Companies::getByBusinessName($request->get('Companies'));
  229.         
  230.         $ReviewDetails ReviewsAndRatings::getById($request->get('id'));
  231.         
  232.         //$ArticleDetails = Articles::getById(936);
  233.         
  234.         return $this->render('ReviewsAndRatings/detail.html.twig', [
  235.             'ReviewsAndRatings' => $ReviewDetails
  236.             ]);
  237.     }
  238. }