/** * Fixtures produits * @author Eric * @param ObjectManager $manager */ public function load(ObjectManager $manager) { $products = [0 => ["title" => "EMD FT AT&SF", "description" => "EMD FTA/B de la Atchison, Topeka and Santa Fe cigar band", "quantity" => 12, "price" => 220, "active" => true], 1 => ["title" => "EMD F7A AT&SF", "description" => "EMD F7A de la Atchison, Topeka and Santa Fe passager jaune avec DCC", "quantity" => 7, "price" => 315.5, "active" => true], 2 => ["title" => "Alco RS-3 LV", "description" => "Alco RS-3 de la Lehigh Valley avec son", "quantity" => 2, "price" => 377.2, "active" => true], 3 => ["title" => "General Electric GG1 Pennsylvania", "description" => "GG1 de la PRR avec DCC", "quantity" => 4, "price" => 422.2, "active" => true], 4 => ["title" => "Alco Big Boy 4-8-8-4 UP", "description" => "Big Boy 4-8-8-4 de la Union Pacific", "quantity" => 7, "price" => 522.0, "active" => false], 5 => ["title" => "Baldwin RF-16 Baltimore & Ohio", "description" => "Baldwin Sharknose avec DCC et son", "quantity" => 1, "price" => 267.3, "active" => false], 6 => ["title" => "Transfert caboose RI", "description" => "Transfert caboose de la Chicago, Rock Island and Pacific", "quantity" => 2, "price" => 46.2, "active" => true], 7 => ["title" => "Citerne 3 dômes ESSO", "description" => "Citerne 3 dôme avec chassi métal", "quantity" => 0, "price" => 42.0, "active" => true]]; foreach ($products as $product) { $prod = new Product(); $prod->setTitle($product['title']); $prod->setDescription($product['description']); $prod->setActive($product['active']); $prod->setPrice($product['price']); $prod->setQuantity($product['quantity']); $prod->setCat($this->getReference('cat' . rand(0, 4))); $prod->setMarque($this->getReference('brand' . rand(0, 2))); $prod->addTag($this->getReference('tag' . rand(0, 4))); $manager->persist($prod); } /*$product = new Product(); $product->setActive(true); $product->setPrice(250); $product->setTitle("Alco Big Boy"); $product->setDescription("Big Boy 4014 UP"); $product->setQuantity(10); $manager->persist($product);*/ $manager->flush(); }
public function delete(Product $product) { $cart = json_decode($this->session->get('cart'), true); if ($cart && array_key_exists($product->getId(), $cart)) { unset($cart[$product->getId()]); $this->save($cart); } }
public function deleteAction(Product $product, Request $request) { $session = $request->getSession(); $cart = $session->get('panier'); if ($cart && array_key_exists($product->getId(), $cart)) { unset($cart[$product->getId()]); $session->set('panier', $cart); } return $this->redirectToRoute('troiswa_back_panier'); }
public function decreaseQuantity(Product $product) { $cart = json_decode($this->session->get('cart'), true); $qty = $cart[$product->getId()]['quantity']; if (array_key_exists($product->getId(), $cart)) { $qty -= 1; $cart[$product->getId()]['quantity'] = $qty; if ($qty == 0) { unset($cart[$product->getId()]); } $this->session->set('cart', json_encode($cart)); } }
public function add(Product $product, $qty = 1) { if ($qty > 0) { //$session = $request->getSession(); if ($this->session->get('cart')) { $cart = json_decode($this->session->get('cart'), true); } else { $cart = []; } if (array_key_exists($product->getId(), $cart)) { $qty += $cart[$product->getId()]['quantity']; } $cart[$product->getId()] = ['quantity' => $qty]; $this->session->set('cart', json_encode($cart)); } }
public function add(Product $product, $qty = 1) { $allProducts = []; if ($this->session->get('panier')) { $allProducts = $this->session->get('panier'); } // Ecriture sans les quantités //array_push($allProducts, $id); // Ecriture avec les quantités // Si le produit existe déjà dans le panier je fais une incrémentation if (array_key_exists($product->getId(), $allProducts)) { $allProducts[$product->getId()] += $qty; } else { $allProducts[$product->getId()] = $qty; } $this->session->set('panier', $allProducts); }
public function load(ObjectManager $manager) { //dump($this->getReference('refcat')); //die; $product = new Product(); $product->setTitle('mon super produit fixtures'); $product->setDescription('lorem ipsum'); $product->setPrix('250 Euros'); $product->setQuantite('20'); $product->setActive('true'); $product->setCateg($this->getReference('refcat')); $product->setProduitMarque($this->getReference('refbrand')); $manager->persist($product); $manager->flush(); }
public function load(\Doctrine\Common\Persistence\ObjectManager $manager) { $faker = \Faker\Factory::create('fr_FR'); // generate data by accessing properties echo $faker->name; //$faker->randomElement($category) for ($i = 0; $i < 10; $i++) { $product = new Product(); $product->setTitle($faker->text(10)); $product->setDescription($faker->text()); $product->setQuantity($faker->randomDigitNotNull); $product->setPrice($faker->randomFloat(2, 0, 1000)); //$product->setReference($faker->randomLetter); //$product->setActivate($faker->numberBetween(0,1)); $category = $this->getReference('categ' . $i); $product->setCategorie($category); $product->setMarque($manager->getRepository('TroiswaBackBundle:Marque')->find(2)); $manager->persist($product); $manager->flush(); } }
/** * Add products * * @param \Troiswa\BackBundle\Entity\Product $products * @return Category */ public function addProduct(\Troiswa\BackBundle\Entity\Product $products) { $this->products[] = $products; //dump($products); // die(); $products->setCateg($this); return $this; }
/** * Décrémente la quantité d'un produit (Ajax) * @author Eric * * @param Product $product * @return \Symfony\Component\HttpFoundation\RedirectResponse * @ParamConverter("product", options={"mapping": {"idproduct": "id"}}) */ public function cartDecrementAction(Product $product, Request $request) { if ($request->isXmlHttpRequest()) { $cart = $this->get('troiswa_front.cart'); $cart->decrement($product->getId()); return new JsonResponse("Produit enlevé"); } return $this->redirectToRoute('troiswa_front_cart'); }
/** * @ParamConverter("comment", options={"mapping": {"idcom": "id"}}) * @ParamConverter("product", options={"mapping": {"idprod": "id"}}) */ public function commentdeleteAction(Comment $comment, Product $product) { $em = $this->getDoctrine()->getManager(); $em->remove($comment); $em->flush(); $this->get('session')->getFlashBag()->add('success', 'Votre commentaire a bien été supprimé'); return $this->redirectToRoute('troiswa_back_product_show', ['idprod' => $product->getId()]); }
public function moinsAction(Product $product, Request $request) { $session = $request->getSession(); $cart = json_decode($session->get('cart'), true); $Newqtymoins = $cart[$product->getId()]['quantity'] - 1; if ($Newqtymoins < 1) { unset($cart[$product->getId()]); } else { $cart[$product->getId()]['quantity'] = $Newqtymoins; } //enregistrer le pannier $session->set('cart', json_encode($cart)); if ($request->isXmlHttpRequest()) { return new JsonResponse("Votre produit a bien été supprimé"); } return $this->redirectToRoute('troiswa_front_cart'); }
/** * Add products * * @param \Troiswa\BackBundle\Entity\Product $products * @return Category */ public function addProduct(\Troiswa\BackBundle\Entity\Product $products) { $this->products[] = $products; // set la catégorie dans le produit lors de l'ajout d'une catégorie $products->setCat($this); //dump($products); //die(); return $this; }
/** * Add products * * @param \Troiswa\BackBundle\Entity\Product $products * @return Marque */ public function addProduct(\Troiswa\BackBundle\Entity\Product $products) { $this->products[] = $products; $products->setMarque($this); return $this; }