public function createAction()
 {
     $product = new Product();
     $product->setName('A Foo Bar');
     $product->setPrice('19.99');
     $product->setDescription('Lorem ipsum dolor');
     $em = $this->getDoctrine()->getEntityManager();
     $em->persist($product);
     $em->flush();
     return new Response('Created product id ' . $product->getId());
 }
 /**
  * Добавление данных
  *
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function createAction()
 {
     $product = new Product();
     $product->setName('A Foo Bar');
     $product->setPrice('19.99');
     $product->setDescription("Lorem ipsum");
     //Менеджер ответственный за управление процессами сохранения и получения обьектов БД
     $em = $this->getDoctrine()->getManager();
     //Сообщает команду на "управление обьектом" $product
     $em->persist($product);
     //Просматривает все обьекты которыми управляет, чтобы узнать, надо ли сохранять их в БД и выполняет запросы
     $em->flush();
     return $this->render('AcmeStoreBundle:Default:insert.html.twig', array('id' => $product->getId()));
 }
 public function createProductAction()
 {
     $category = new Category();
     $category->setName("Rowery");
     $product = new Product();
     $product->setName("Rower biegowy");
     $product->setPrice(230.44);
     $product->setDescription("opis rowerka");
     $product->setCategory($category);
     $em = $this->getDoctrine()->getManager();
     $em->persist($category);
     $em->persist($product);
     $em->flush();
     return $this->render("AcmeStoreBundle:Default:Product.html.twig", array("product" => $product));
 }
Example #4
0
 public function createProductAction()
 {
     $category = new Category();
     $category->setName('Main Products ' . rand(1, 100));
     $product = new Product();
     $product->setName('Foo ' . rand(101, 200));
     $product->setPrice(19.99);
     $product->setDescription('Foo desc');
     // relate this product to the category
     $product->setCategory($category);
     $em = $this->getDoctrine()->getManager();
     $em->persist($category);
     $em->persist($product);
     $em->flush();
     return new Response('Created product id: ' . $product->getId() . ' and category id: ' . $category->getId());
 }
 public function createAction()
 {
     $product = new Product();
     $product->setName('A Foo Bar');
     $product->setPrice('19.99');
     $product->setDescription('Lorem ipsum dolor');
     $em = $this->getDoctrine()->getManager();
     $em->persist($product);
     $em->flush();
     $user = new User();
     $user->setName('Joan');
     $user->setLogin('joan');
     $user->setEmail('*****@*****.**');
     $em = $this->getDoctrine()->getManager();
     $em->persist($user);
     $em->flush();
     return new Response('Created product id ' . $product->getId() . 'Created user id ' . $user->getId());
 }
 public function addAction(Request $request)
 {
     $cateArray = array();
     $category = $this->get('doctrine')->getRepository('AcmeCategoryBundle:Category')->findBy(array('status' => 1));
     foreach ($category as $key => $data) {
         $cateArray[$data->getId()] = $data->getName();
     }
     $products = new \Acme\StoreBundle\Entity\Product();
     $products->setCategory('');
     $products->setName('');
     $products->setPrice('');
     $products->setDescription('');
     $products->setImage('');
     $form = $this->createFormBuilder($products)->add('category', 'choice', array('choices' => array('placeholder' => 'select category', '' => $cateArray)))->add('name', 'text')->add('price', 'text')->add('description', 'textarea')->add('image', 'file')->getForm();
     $form->handleRequest($request);
     $validator = $this->get('validator');
     $errors = $validator->validate($products);
     if (count($errors) > 0) {
         return $this->render('AcmeStoreBundle:Default:add.html.twig', array('form' => $form->createView()));
     } else {
         $a = $request->request->get('form');
         $img = $form['image']->getData()->getClientOriginalName();
         $products = new Product();
         $products->setName($a['name']);
         $products->setCategory($a['category']);
         $products->setPrice($a['price']);
         $products->setDescription($a['description']);
         $products->setStatus('1');
         $products->setImage($img);
         $em = $this->getDoctrine()->getManager();
         $em->persist($products);
         $em->flush();
         $dir = $_SERVER['DOCUMENT_ROOT'] . '/uploads/products/' . $products->getId();
         mkdir($dir);
         $form->get('image')->getData()->move($dir, $img);
         return $this->redirect($this->generateUrl('acme_store'));
     }
     return $this->render('AcmeStoreBundle:Default:add.html.twig', array('form' => $form->createView()));
 }
 public function editAction(Request $request)
 {
     $user = $this->container->get('security.context')->getToken()->getUser();
     $userId = $user->getId();
     $userName = $user->getUsername();
     if ($userName == 'admin') {
         $category = $this->get('doctrine')->getRepository('AcmeCategoryBundle:Category')->findAll();
     } else {
         $category = $this->get('doctrine')->getRepository('AcmeCategoryBundle:Category')->findBy(array('userid' => $userId));
     }
     //$category= $this->get('doctrine')->getRepository('AcmeCategoryBundle:Category')->findAll();
     foreach ($category as $key => $data) {
         $cateArray[$data->getId()] = $data->getName();
     }
     $queue = $cateArray;
     array_unshift($queue, "select category");
     $cate = $queue;
     $id = $request->get('id');
     $em = $this->getDoctrine()->getManager();
     $product = $em->getRepository('AcmeStoreBundle:Product')->find($id);
     $oldimg = $product->getImage();
     $products = new \Acme\StoreBundle\Entity\Product();
     $products->setCategory('');
     $products->setName('');
     $products->setPrice('');
     $products->setDescription('');
     $products->setImage('');
     $form = $this->createFormBuilder($products)->add('category', 'choice', array('choices' => $cateArray, 'preferred_choices' => array($product->getCategory())))->add('name', 'text')->add('price', 'text')->add('description', 'textarea')->add('image', 'file', array('error_bubbling' => TRUE))->getForm();
     $form->handleRequest($request);
     $validator = $this->get('validator');
     $errors = $validator->validate($products);
     if ($request->getMethod() == 'POST') {
         if (count($errors) > 1) {
             return $this->render('AcmeStoreBundle:Default:edit.html.twig', array('form' => $form->createView(), 'products' => $products, 'product' => $product, 'id' => $id, 'image' => $oldimg));
         } else {
             $a = $request->request->get('form');
             $products = $em->getRepository('AcmeStoreBundle:Product')->find($id);
             if ($_FILES['form']['name']['image'] != NULL) {
                 $products->setImage($_FILES['form']['name']['image']);
                 if (is_file($_SERVER['DOCUMENT_ROOT'] . '/uploads/products/' . $id . '/' . $oldimg)) {
                     unlink($_SERVER['DOCUMENT_ROOT'] . '/uploads/products/' . $id . '/' . $oldimg);
                     rmdir($_SERVER['DOCUMENT_ROOT'] . '/uploads/products/' . $id);
                     $img = $form['image']->getData()->getClientOriginalName();
                     $dir = $_SERVER['DOCUMENT_ROOT'] . '/uploads/products/' . $products->getId();
                     mkdir($dir);
                     $form->get('image')->getData()->move($dir, $img);
                 }
             } else {
                 $products->setImage($oldimg);
             }
             $products->setName($a['name']);
             $products->setCategory($a['category']);
             $products->setPrice($a['price']);
             $products->setDescription($a['description']);
             $products->setStatus('1');
             $em->persist($products);
             $em->flush();
         }
         return $this->redirect($this->generateUrl('acme_store'));
     }
     return $this->render('AcmeStoreBundle:Default:edit.html.twig', array('form' => $form->createView(), 'products' => $products, 'product' => $product, 'id' => $id, 'image' => $oldimg));
 }
 /**
  * {@inheritDoc}
  */
 public function setName($name)
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'setName', array($name));
     return parent::setName($name);
 }