src/Controller/ArticlesCategoriesController.php line 36
<?phpnamespace App\Controller;use Symfony\Component\Routing\Annotation\Method;use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;use Symfony\Component\Routing\Annotation\Route;use Symfony\Component\Routing\Annotation\Security;use Symfony\Component\HttpFoundation\Request;use Doctrine\Persistence\ManagerRegistry;use App\Entity\ArticlesCategories;use App\Form\ArticlesCategoriesType;use OlaSoft\Common;use Symfony\Component\HttpFoundation\Response;use App\Entity\UsersActivities;/*** @Route("/os-admin/articles/categories")*/class ArticlesCategoriesController extends AbstractController{public function __construct(ManagerRegistry $doctrine){$this->doctrine = $doctrine;}private $doctrine;public function getDoctrine(){return $this->doctrine;}/*** @Route("/page/{offset}/",name="articlescategories-admin-page")* @Route("/",name="articlescategories-admin")*/public function index(Request $request, $offset=1){$count = 0;$offset--;$limit = 20;$of=$offset*$limit;$em = $this->getDoctrine()->getManager();$list=$em->getRepository(ArticlesCategories::class)->findBy(array(),array('id'=>'DESC'));$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\index.html.twig',['list'=>$list,'ajax'=>$ajax,'offset'=>$offset,'count'=>$count,'noResearch'=>true,"title"=>"Gestion des catégories d'articles ","subtitle"=>"Liste des catégories"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=>"Gestion des catégories d'articles ","subtitle"=>"Liste des catégories"])): $response;}/*** @Route("/add/",name="articlescategories-new", defaults={"isEdit":false})* @Route("/edit/{id}/",name="articlescategories-edit")*/public function edit(Request $request, ArticlesCategories $category=null, $isEdit = true){$em = $this->getDoctrine()->getManager();if($category === null)$category = new ArticlesCategories();$form=$this->createForm(ArticlesCategoriesType::class,$category);$form->handleRequest($request);if($form->isSubmitted()){if($form->isValid()){$category->setSlug(Common::slug($category->getName()));$em->persist($category);$em->flush();if ($isEdit)Common::trackChange($em, $category, $this->getUser(), 'add', "Ajout d'une catégorie d'article");elseCommon::trackChange($em, $category, $this->getUser(), 'edit', "Modification d'une catégorie d'article");$this->addFlash("notice","Enregistrement effectué avec succès");return $this->redirectToRoute("articlescategories-admin");}}$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\edit.html.twig',['form'=>$form->createView(),'ajax'=>$ajax,"title"=>"Gestion des catégories d'articles ","subtitle"=>"Edition d'une catégorie"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=>"Gestion des catégories d'articles ","subtitle"=>"Edition d'une catégorie"])): $response;}/*** @Route("/{id}/enable", name="articlescategories-enable")*/public function enable(Request $request, ArticlesCategories $item){$em = $this->getDoctrine()->getManager();$item->setIsEnabled(!$item->getIsEnabled());$em->persist($item);$em->flush();Common::trackChange($em, $item, $this->getUser(), $item->getIsEnabled() ? 'enable' : 'disable', $item->getIsEnabled() ? "Activation d'une catégorie d'article" : "Désactivation d'une catégorie d'article");$ajax = $request->isXmlHttpRequest();if(!$ajax) $this->addFlash("notice","Activation / Désactivation effectuée avec succès.");return $ajax? new Response(\json_encode(['status'=>$item->getIsEnabled(), 'notice'=>'Activation / Désactivation effectuée avec succès.'])): $this->redirectToRoute('articlescategories-admin');}}