Guest User

CategoryController

a guest
Nov 9th, 2016
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.50 KB | None | 0 0
  1. <?php
  2.  
  3. namespace SoftUniBlogBundle\Controller\Admin;
  4.  
  5. use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
  6. use SoftUniBlogBundle\Entity\Category;
  7. use SoftUniBlogBundle\Form\CategoryType;
  8. use Symfony\Bundle\FrameworkBundle\Controller\Controller;
  9. use Symfony\Component\HttpFoundation\Request;
  10.  
  11.  
  12. /**
  13.  * @Route("/admin/categories")
  14.  *
  15.  * Class CategoryController
  16.  * @package SoftUniBlogBundle\Controller\Admin
  17.  */
  18. class CategoryController extends Controller
  19. {
  20.     /**
  21.      * @Route("/", name="admin_categories")
  22.      * @return \Symfony\Component\HttpFoundation\Response
  23.      */
  24.     public function listCategories()
  25.     {
  26.         $categories = $this->getDoctrine()->getRepository(Category::class)->findAll();
  27.  
  28.         return $this->render('admin/category/list.html.twig', ['categories' => $categories]);
  29.     }
  30.  
  31.     /**
  32.      * @Route("/create", name="admin_categories_create")
  33.      *
  34.      * @param Request $request
  35.      * @return \Symfony\Component\HttpFoundation\RedirectResponse|\Symfony\Component\HttpFoundation\Response
  36.      */
  37.     public function createCategory(Request $request)
  38.     {
  39.         $category = new Category();
  40.         $form = $this->createForm(CategoryType::class, $category);
  41.  
  42.         $form->handleRequest($request);
  43.  
  44.          if ($form->isSubmitted() && $form->isValid()) {
  45.  
  46.             $em = $this->getDoctrine()->getManager();
  47.             $em->persist($category);
  48.             $em->flush();
  49.  
  50.             return $this->redirectToRoute('admin_categories');
  51.         }
  52.  
  53.         return $this->render('admin/category/create.html.twig', array('form' => $form->createView()));
  54.     }
  55.  
  56.     /**
  57.      * @Route("/edit/{id}", name="admin_categories_edit")
  58.      *
  59.      * @param $id
  60.      * @param Request $request
  61.      * @return \Symfony\Component\HttpFoundation\RedirectResponse|\Symfony\Component\HttpFoundation\Response
  62.      */
  63.     public function editCategory($id, Request $request)
  64.     {
  65.         $category = $this->getDoctrine()->getRepository(Category::class)->find($id);
  66.  
  67.         $form = $this->createForm(CategoryType::class, $category);
  68.  
  69.         $form->handleRequest($request);
  70.  
  71.         if ($form->isSubmitted() && $form->isValid()) {
  72.  
  73.             $em = $this->getDoctrine()->getManager();
  74.             $em->persist($category);
  75.             $em->flush();
  76.  
  77.             return $this->redirectToRoute('admin_categories');
  78.         }
  79.  
  80.         return $this->render('admin/category/edit.html.twig', array('category' => $category, 'form' => $form->createView()));
  81.     }
  82.  
  83. }
Add Comment
Please, Sign In to add comment