/**
  * @Route("/produkt/{permalink}", name="product_url")
  */
 public function indexAction($permalink)
 {
     $product = $this->getDoctrine()->getRepository('ShopBundle:Products')->findOneBy(['permalink' => $permalink]);
     //   ->getOneWithCategoryAndPropertiesByPermalink($permalink);
     $breadcrumbs = $this->get("white_october_breadcrumbs");
     // Simple example
     $breadcrumbs->addItem("Home", $this->get("router")->generate("homepage_url"));
     $breadcrumbs->addItem("Produkty", $this->get("router")->generate("listing_url"));
     $breadcrumbs->addItem($product->getName(), $this->get("router")->generate("product_url", ['permalink' => $permalink]));
     $productForm = new Products();
     $productForm->setId($product->getId());
     $productForm = $this->createFormBuilder($productForm)->setAction($this->generateUrl('add_to_checkout'))->add('id', HiddenType::class)->add('variantsInput', HiddenType::class)->getForm();
     return $this->render('ShopBundle:Product:product.html.twig', ['product' => $product, 'productFormToCheckout' => $productForm->createView()]);
 }
Example #2
0
 public function load(ObjectManager $manager)
 {
     $product = new Products();
     $product->setName('Samsung S6');
     $product->setCategory('Telefony');
     $product->setQuantity('2300');
     $product->setImg('https://www.o2.co.uk/shop/homepage/images/shop15/brand/samsung/s6-edge/samsung-s6-edge-img-5-device-details-bp3-170315.jpg');
     $product->setDescription('Samsung Galaxy S6 edge to dzieło powstałe z połączenia szkła i metalu. Wyraź siebie zapierającym dech w piersiach, pierwszym na świecie podwójnie zakrzywionym ekranem wkomponowanym w piękne zaokrąglenia i lśniące szkło, mieniące się feerią barw.');
     $product1 = new Products();
     $product1->setName('Lenovo Y580');
     $product1->setCategory('Laptopy');
     $product1->setQuantity('2900');
     $product1->setImg('http://pclab.pl/zdjecia/artykuly/yorobo/2013/lenovo_y580/lenovo_y580.png');
     $product1->setDescription('Notebooki IdeaPad są projektowane z myślą o zastosowaniach stricte multimedialnych. W porównaniu z poprzednim modelem, Y570, obudowa Lenovo Y580 przeszła pewną ewolucję. Niewątpliwą zmianą na lepsze jest kolorystyka. Cała konstrukcja cechuje się eleganckim czarnym kolorem, który wygląda o wiele gustowniej, niż mieszanka różu i fioletu z Y570. Niestety niefajny element w postaci błyszczącej ramki ekranu nie został zmieniony.');
     $product2 = new Products();
     $product2->setName('Audi A4');
     $product2->setCategory('Auta');
     $product2->setQuantity('49000');
     $product2->setImg('http://pclab.pl/zdjecia/artykuly/yorobo/2013/lenovo_y580/lenovo_y580.png');
     $product2->setDescription('Notebooki IdeaPad są projektowane z myślą o zastosowaniach stricte multimedialnych. W porównaniu z poprzednim modelem, Y570, obudowa Lenovo Y580 przeszła pewną ewolucję. Niewątpliwą zmianą na lepsze jest kolorystyka. Cała konstrukcja cechuje się eleganckim czarnym kolorem, który wygląda o wiele gustowniej, niż mieszanka różu i fioletu z Y570. Niestety niefajny element w postaci błyszczącej ramki ekranu nie został zmieniony.');
     $product3 = new Products();
     $product3->setName('BMW M3');
     $product3->setCategory('Auta');
     $product3->setQuantity('130000');
     $product3->setImg('http://ocdn.eu/images/pulscms/ZDI7MDMsMzBjLDAsMCwx/54f236b76e59d443acc2c3c665f253ad.jpg');
     $product3->setDescription('Sportowa wersja samochodów BMW oparta na serii 3. Pierwsze BMW M3 pojawiło się w 1985 roku. Obecnie istnieją już 4 generacje tych pojazdów. Moc waha się od 195 KM w najstarszym modelu E30 do 450 KM w modelu M3 GTS (E92). Produkcja została zakończona we wrześniu 2013 roku. BMW ogłosiło, że nazwa M3 w kolejnej generacji odnosić będzie się tylko do wersji sedan, wersja coupé otrzyma nazwę M4');
     $manager->persist($product);
     $manager->persist($product1);
     $manager->persist($product2);
     $manager->persist($product3);
     $manager->flush();
 }
 public function makeProductForm($product = null)
 {
     $productForm = new Products();
     $productIdToAction = '';
     $productPermalinkToAction = '';
     if ($product) {
         $productIdToAction = '/' . $product->getId();
         $productPermalinkToAction = $product->getPermalink();
         $productForm->setId($product->getId())->setName($product->getName())->setPermalink($product->getPermalink())->setPrice($product->getPrice())->setDescription(str_replace('<br />', "\r\n", $product->getDescription()))->setIsActive($product->getIsActive())->setIsNew($product->getIsNew());
     } else {
         $productForm->setIsActive(false)->setIsNew(false);
     }
     $productForm = $this->createFormBuilder($productForm)->setAction($this->generateUrl('add_products_action_manager_url') . $productIdToAction)->add('id', HiddenType::class)->add('name', TextType::class, ['label' => 'Nazwa: ', 'required' => false])->add('permalink', TextType::class, ['label' => 'Link: ', 'attr' => ['data-permalink' => $productPermalinkToAction]])->add('price', TextType::class, ['label' => 'Cena: '])->add('description', TextareaType::class, ['label' => 'Opis: '])->add('categoriesInput', HiddenType::class)->add('variantsInput', HiddenType::class)->add('propertiesInput', HiddenType::class)->add('isNew', CheckboxType::class, ['label' => 'Jest nowością: '])->add('isActive', CheckboxType::class, ['label' => 'Jest aktywny: '])->add('imgCount', HiddenType::class)->add('photo', FileType::class, ['multiple' => true, 'label' => 'Dodaj zdjęcia: '])->getForm();
     return $productForm;
 }