Ejemplo n.º 1
0
 public function getServiceConfig()
 {
     return array('invokables' => array(), 'factories' => array('category_repository' => function ($sm) {
         $repository = $sm->get('doctrine.entitymanager.orm_default')->getRepository('Catalog\\Entity\\Category');
         return $repository;
     }, 'product_repository' => function ($sm) {
         $repository = $sm->get('doctrine.entitymanager.orm_default')->getRepository('Catalog\\Entity\\Product');
         return $repository;
     }, 'product_form' => function ($sm) {
         $form = new Form\ProductForm();
         $form->setInputFilter(new Form\ProductFilter());
         return $form;
     }, 'category_form' => function ($sm) {
         $form = new Form\CategoryForm();
         $form->setInputFilter(new Form\CategoryFilter());
         return $form;
     }, 'package_service' => function ($sm) {
         $service = new Service\Comment();
         $service->setRepository($sm->get('category_repository'));
         $service->setCommentForm($sm->get('category_form'));
         return $service;
     }, 'category_service' => function ($sm) {
         $service = new Service\Category();
         $service->setRepository($sm->get('category_repository'));
         //$product_service->setCommentForm($sm->get('product_form'));
         return $service;
     }, 'product_service' => function ($sm) {
         $service = new Service\Product();
         $service->setRepository($sm->get('product_repository'));
         $service->setCommentForm($sm->get('product_form'));
         return $service;
     }));
 }
Ejemplo n.º 2
0
 public function addAction()
 {
     $form = new ProductForm();
     $request = $this->getRequest();
     if ($request->isPost()) {
         $product = new Product();
         $form->setInputFilter($product->getInputFilter());
         $form->setData($request->post());
         if ($form->isValid()) {
             $formData = $form->getData();
             $product->populate(${$formData});
             $this->getProductTable()->saveProduct($product);
             return $this->redirect()->toRoute('catalog-product', array('action' => 'view'));
         }
     }
     return array('form' => $form);
 }